|
|
@@ -25,16 +25,23 @@ class Scraper1688:
|
|
|
self.status_callback = status_callback # 用于回调 GUI 状态
|
|
|
self.user_data_path = os.path.abspath(os.path.join(os.getcwd(), "1688_user_data"))
|
|
|
self._cleanup()
|
|
|
- options = uc.ChromeOptions()
|
|
|
- options.add_argument(f'user-agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36')
|
|
|
- options.add_argument(f"--user-data-dir={self.user_data_path}")
|
|
|
- if headless: options.add_argument('--headless=new')
|
|
|
- options.add_argument('--disable-blink-features=AutomationControlled')
|
|
|
- options.add_argument("--window-size=1920,1080")
|
|
|
+
|
|
|
+ def create_options():
|
|
|
+ options = uc.ChromeOptions()
|
|
|
+ options.add_argument(f'user-agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36')
|
|
|
+ options.add_argument(f"--user-data-dir={self.user_data_path}")
|
|
|
+ if headless: options.add_argument('--headless=new')
|
|
|
+ options.add_argument('--disable-blink-features=AutomationControlled')
|
|
|
+ options.add_argument("--window-size=1920,1080")
|
|
|
+ return options
|
|
|
+
|
|
|
try:
|
|
|
- self.driver = uc.Chrome(options=options, headless=headless, version_main=137)
|
|
|
+ # 关键修复:每次启动都使用 create_options() 产生的全新对象
|
|
|
+ self.driver = uc.Chrome(options=create_options(), headless=headless, version_main=131)
|
|
|
except:
|
|
|
- self.driver = uc.Chrome(options=options, headless=headless)
|
|
|
+ # 关键修复:这里也要用全新的 options 对象
|
|
|
+ self.driver = uc.Chrome(options=create_options(), headless=headless)
|
|
|
+
|
|
|
stealth(self.driver, languages=["zh-CN", "zh"], vendor="Google Inc.", platform="Win32", fix_hairline=True)
|
|
|
|
|
|
def _cleanup(self):
|