92 lines
2.8 KiB
Python
92 lines
2.8 KiB
Python
"""测试浏览器是否能正常启动"""
|
|
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
|
|
|