fromozu commited on
Commit
9962df5
·
verified ·
1 Parent(s): 45aefea

Upload hf_backend/test_edge_browser.py with huggingface_hub

Browse files
Files changed (1) hide show
  1. hf_backend/test_edge_browser.py +70 -0
hf_backend/test_edge_browser.py ADDED
@@ -0,0 +1,70 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/usr/bin/env python3
2
+ """
3
+ 使用 Edge 浏览器尝试,看是否能绕过 DDoS-Guard
4
+ """
5
+
6
+ from playwright.sync_api import sync_playwright
7
+ import time
8
+
9
+ MD5 = "d94c20d1364af9b484949659398c4062"
10
+ SLOW_URL = f"https://annas-archive.gl/slow_download/{MD5}/0/3"
11
+
12
+ def try_edge_browser():
13
+ """使用 Edge 浏览器"""
14
+ print(f"目标: {SLOW_URL}\n")
15
+
16
+ with sync_playwright() as p:
17
+ try:
18
+ # 尝试启动 Edge
19
+ browser = p.edge.launch(headless=False)
20
+ print("使用 Edge 浏览器")
21
+ except:
22
+ # 如果 Edge 不可用,使用 Chromium
23
+ browser = p.chromium.launch(headless=False)
24
+ print("Edge 不可用,使用 Chromium")
25
+
26
+ context = browser.new_context(
27
+ user_agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36 Edg/123.0.0.0",
28
+ viewport={"width": 1920, "height": 1080},
29
+ )
30
+ page = context.new_page()
31
+
32
+ print("访问 slow_download...")
33
+ page.goto(SLOW_URL, timeout=120000, wait_until="domcontentloaded")
34
+
35
+ print(f"初始标题: {page.title()}")
36
+
37
+ # 等待最多60秒
38
+ for i in range(60):
39
+ time.sleep(1)
40
+ try:
41
+ title = page.title()
42
+ url = page.url
43
+
44
+ if url.lower().endswith('.epub'):
45
+ print(f"\n在第{i+1}秒发现EPUB: {url}")
46
+ browser.close()
47
+ return url
48
+
49
+ if title != "DDoS-Guard":
50
+ print(f"\n在第{i+1}秒: 标题={title}")
51
+
52
+ if (i + 1) % 15 == 0:
53
+ print(f" {i+1}秒... URL: {url[:60]}...")
54
+ except Exception as e:
55
+ print(f" {i+1}秒... (导航中)")
56
+ continue
57
+
58
+ print(f"\n最终URL: {page.url}")
59
+ browser.close()
60
+ return None
61
+
62
+ if __name__ == "__main__":
63
+ print("=" * 60)
64
+ print("使用 Edge 浏览器测试")
65
+ print("=" * 60)
66
+ result = try_edge_browser()
67
+ if result:
68
+ print(f"\n成功: {result}")
69
+ else:
70
+ print("\n失败")