selenium phantomjs无法抓取网站机器人检测

2024-06-17 17:45:44 发布

您现在位置:Python中文网/ 问答频道 /正文

我不能抓取这个站点here是python selenium phantomjs请求的屏幕截图。我不知道他们是怎么发现这是一个机器人,但在图片上说需要javascript和验证码,也许还有其他什么需要做的?我绝对不会以超人的速度刮擦,因为这是我的第一个要求,所以这不是原因。P、 当我把同样的请求粘贴到我的浏览器上时,它会指向我想要的页面,并且工作正常。在

    br = webdriver.PhantomJS('bin/phantomjs')
    br.set_window_size(1366, 200)
    br.get("website")
    br.save_screenshot(x)

Tags: brhere屏幕站点粘贴selenium机器人浏览器
2条回答

通常可以帮助您:

  • 标题应与常见浏览器相似,包括:
  • 导航:
    • 如果您发出多个请求,请在它们之间设置一个随机超时
    • 如果打开页面中的链接,请相应地设置Referer标题
    • 或者更好,模拟鼠标活动来移动,点击并跟踪链接
  • 应启用图像
  • 应启用Javascript
    • 检查“导航器.插件“和”导航器.语言”在客户端javascript页面上下文中设置
    • 检查您所使用的客户机是否没有注入明显的javascript变量(例如cdc、uu monaster…)
  • 使用代理

好吧,我现在开始工作了。我只是为了其他不喜欢的人而这么说

    cap = webdriver.DesiredCapabilities.PHANTOMJS
    cap["phantomjs.page.settings.javascriptEnabled"] = True
    cap["phantomjs.page.settings.loadImages"] = True
    cap["phantomjs.page.settings.userAgent"] = 'Mozilla/5.0 (Windows NT 10.0; WOW64; rv:50.0) Gecko/20100101 Firefox/50.0'
    br = webdriver.PhantomJS('bin/phantomjs',desired_capabilities=cap)

相关问题 更多 >