"""测试浏览器是否能正常启动""" import time from DrissionPage import ChromiumPage, ChromiumOptions CHROME_PATH = r'C:\Program Files\Google\Chrome\Application\chrome.exe' print("="*60) print("浏览器启动测试") print("="*60) # 检查 Chrome 路径 import os if not os.path.exists(CHROME_PATH): print(f"❌ 错误: 找不到 Chrome 浏览器") print(f"路径: {CHROME_PATH}") print("\n请检查:") print("1. Chrome 是否已安装") print("2. Chrome 的安装路径是否正确") print("3. 如果 Chrome 安装在别的路径,请修改 CHROME_PATH 变量") exit(1) else: print(f"✅ Chrome 路径检查通过: {CHROME_PATH}") # 配置浏览器选项 print("\n正在配置浏览器选项...") options = ChromiumOptions() options.set_browser_path(CHROME_PATH) # 尝试启动浏览器 print("正在启动浏览器...") print("如果浏览器没有自动打开,可能会有以下原因:") print("1. Chrome 浏览器正在被其他程序使用") print("2. ChromeDriver 版本不匹配") print("3. 防火墙或安全软件阻止") print("\n请等待 10 秒...\n") try: page = ChromiumPage(options) print("✅ 浏览器启动成功!") # 测试打开一个简单的页面 print("\n正在打开测试页面: https://www.baidu.com") page.get('https://www.baidu.com') time.sleep(3) # 检查页面信息 try: print(f"当前 URL: {page.url}") print(f"页面标题: {page.title}") html_len = len(page.html) print(f"页面 HTML 长度: {html_len} 字符") if html_len > 1000: print("\n✅ 测试成功!浏览器正常工作。") print("\n现在可以运行 fetch_logistics.py 了。") else: print("\n⚠️ 警告: 页面内容可能未完全加载") except Exception as e: print(f"\n⚠️ 获取页面信息时出错: {e}") print("\n浏览器将保持打开状态 30 秒,请查看是否能看到浏览器窗口...") print("如果能看到浏览器窗口,说明启动成功。") time.sleep(30) # 询问是否关闭 print("\n测试完成。浏览器将保持打开状态。") print("您可以手动关闭浏览器窗口,或者按 Ctrl+C 退出程序。") # 不自动关闭,让用户查看 try: input("\n按 Enter 键关闭浏览器并退出...") except: pass except Exception as e: print(f"\n❌ 浏览器启动失败!") print(f"错误信息: {e}") print("\n可能的解决方案:") print("1. 检查 Chrome 是否正确安装") print("2. 尝试关闭所有 Chrome 窗口后重试") print("3. 检查是否有权限问题") print("4. 查看是否有错误日志") import traceback traceback.print_exc() finally: try: page.quit() print("浏览器已关闭") except: pass