#!/usr/bin/env python3
"""
测试浏览器配置
验证是否使用真实 Chrome 浏览器
"""
import asyncio
from browser.browser import create_browser
from loguru import logger
async def test_browser():
"""测试浏览器配置"""
logger.info("=" * 60)
logger.info("开始测试浏览器配置")
logger.info("=" * 60)
# 创建浏览器
browser_manager = await create_browser()
try:
# 创建页面
page = await browser_manager.new_page()
# 导航到测试页面
await page.goto("https://www.xiaohongshu.com")
await asyncio.sleep(2)
# 获取浏览器信息
browser_info = await page.evaluate("""
() => {
return {
userAgent: navigator.userAgent,
webdriver: navigator.webdriver,
plugins: navigator.plugins.length,
languages: navigator.languages,
platform: navigator.platform,
vendor: navigator.vendor,
hardwareConcurrency: navigator.hardwareConcurrency,
};
}
""")
logger.info("=" * 60)
logger.info("浏览器信息:")
logger.info("=" * 60)
logger.info(f"User-Agent: {browser_info['userAgent']}")
logger.info(f"WebDriver: {browser_info['webdriver']}")
logger.info(f"Plugins: {browser_info['plugins']}")
logger.info(f"Languages: {browser_info['languages']}")
logger.info(f"Platform: {browser_info['platform']}")
logger.info(f"Vendor: {browser_info['vendor']}")
logger.info(f"CPU Cores: {browser_info['hardwareConcurrency']}")
logger.info("=" * 60)
# 检查反检测是否生效
if browser_info['webdriver'] is None or browser_info['webdriver'] is False:
logger.success("✅ WebDriver 已隐藏 - 反检测生效!")
else:
logger.warning("⚠️ WebDriver 未隐藏 - 可能被检测")
if browser_info['plugins'] > 0:
logger.success(f"✅ Plugins 数量: {browser_info['plugins']} - 看起来像真实浏览器")
else:
logger.warning("⚠️ Plugins 数量为 0 - 可能被检测")
# 检查是否是 Chrome
if 'Chrome' in browser_info['userAgent']:
logger.success("✅ 使用 Chrome 浏览器")
else:
logger.warning("⚠️ 不是 Chrome 浏览器")
logger.info("=" * 60)
logger.info("测试完成! 浏览器将在 10 秒后关闭...")
logger.info("=" * 60)
await asyncio.sleep(10)
finally:
await browser_manager.close()
if __name__ == "__main__":
asyncio.run(test_browser())