首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何避免imperva机器人检测?

如何避免imperva机器人检测?
EN

Stack Overflow用户
提问于 2022-05-22 17:14:13
回答 1查看 375关注 0票数 0

我正在运行一个Python脚本来抓取一个网站。它使用Imperva来检测自动脚本在它的网页中爬行。一旦我运行脚本,Imperva就阻止了我的IP访问该站点。我确实读过有人建议在脚本中加入一个time.sleep(random.randint(a,b)) (尝试模仿人类行为),但是它没有起作用,或者它只是作为一个独立的方法不起作用。如果他们检测到的是铬驱动器本身,那么我想这是不可能避免的。有没有人可以在我的脚本中包含一些实用的建议来绕过这个问题呢?提前谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-05-23 01:55:55

引言

有许多不同的组件,需要添加到一个网络刮刀,使它无法检测。我建议使用下面的代码来测试当前检测级别的()

代码语言:javascript
复制
driver.get("https://bot.sannysoft.com/")

更有可能的是,会在上一举失败,幸运的是,很容易配置一个刮板,它将通过所有这些测试,并且完全无法检测到。

硒隐身

硒隐身是一个用于避免检测的python包。很简单..。

代码语言:javascript
复制
pip install selenium-stealth

并遵循以下配置:

代码语言:javascript
复制
stealth(driver,
        user_agent: 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36(KHTML, like Gecko) Chrome/83.0.4103.53 Safari/537.36',
        languages=["en-US", "en"],
        vendor="Google Inc.",
        platform="Win32",
        webgl_vendor="Intel Inc.",
        renderer="Intel Iris OpenGL Engine",
        fix_hairline=True,
        )

您的web刮刀应该通过所有的测试,现在尝试在Imperva站点上实现这个解决方案。

更多信息

如果您仍然被阻塞,我建议查看随机用户代理库,在selenium-隐形配置的"user_agent“变量中循环用户代理。否则,您可以支付代理提供程序的费用,以完全掩饰您的IP。尽管要记住,代理网络目前没有的硒配置。

关于代理网络硒配置的信息: Python Selenium代理网络

关于云中硒可探测性的信息: Python更改WebGL供应商/渲染器用于无法检测的无头刮板

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72339741

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档