1
This commit is contained in:
@@ -7,6 +7,7 @@ import time
|
||||
from dataclasses import dataclass
|
||||
from pathlib import Path
|
||||
from typing import Dict, Iterable, List, Optional
|
||||
from urllib.parse import parse_qs, urlparse
|
||||
|
||||
import requests
|
||||
from bs4 import BeautifulSoup
|
||||
@@ -177,6 +178,17 @@ def main() -> None:
|
||||
load_dotenv()
|
||||
html_path = Path("学生学习页面.html")
|
||||
course_url = os.getenv("COURSE_URL", "").strip()
|
||||
|
||||
# Parse URL parameters from .env
|
||||
clazzid, courseid, cpi = "", "", ""
|
||||
if course_url:
|
||||
parsed = urlparse(course_url)
|
||||
qs = parse_qs(parsed.query)
|
||||
clazzid = qs.get("clazzid", [""])[0]
|
||||
courseid = qs.get("courseId", [""])[0] or qs.get("courseid", [""])[0]
|
||||
cpi = qs.get("cpi", [""])[0]
|
||||
print(f"[INFO] Extracted params: courseid={courseid}, clazzid={clazzid}, cpi={cpi}")
|
||||
|
||||
if not html_path.exists():
|
||||
if course_url:
|
||||
print(f"[INFO] 本地HTML不存在,自动下载课程页面: {course_url}")
|
||||
@@ -215,11 +227,11 @@ def main() -> None:
|
||||
print("[WARN] No cookies provided. Requests may fail if authentication is required.")
|
||||
|
||||
base_params = {
|
||||
"clazzid": "129437493",
|
||||
"courseid": "256005147",
|
||||
"clazzid": clazzid,
|
||||
"courseid": courseid,
|
||||
"num": "0",
|
||||
"ut": "s",
|
||||
"cpi": "441843723",
|
||||
"cpi": cpi,
|
||||
"mooc2": "1",
|
||||
"isMicroCourse": "",
|
||||
"editorPreview": "",
|
||||
|
||||
Reference in New Issue
Block a user