实际上,我正试图从不同的网站上获取一些汽车数据,我一直在使用selenium和chromebrowser,但一些网站实际上通过验证码验证(例如:https://www.leboncoin.fr/)阻止selenium,这只需要1或2个请求。 我尝试在chromebrowser中更改$\u cdc,但这并没有解决问题,我一直在使用chromebrowser的这些选项
user_agent = 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.97 Safari/537.36'
options = webdriver.ChromeOptions()
options.add_argument(f'user-agent={user_agent}')
options.add_argument('start-maximized')
options.add_argument('disable-infobars')
options.add_argument('--profile-directory=Default')
options.add_argument("--incognito")
options.add_argument("--disable-plugins-discovery")
options.add_experimental_option("excludeSwitches", ["ignore-certificate-errors", "safebrowsing-disable-download-protection", "safebrowsing-disable-auto-update", "disable-client-side-phishing-detection"])
options.add_argument('--disable-extensions')
browser = webdriver.Chrome(chrome_options=options)
browser.delete_all_cookies()
browser.set_window_size(800,800)
browser.set_window_position(0,0)
我试图抓取的网站使用DataDome进行机器人安全,有线索吗
这可能是由于各种原因造成的。试着通过给出的答案here来避免这个问题
有时对我有效的一个简单解决方案是在selenium中使用
Waits
/Sleep
调用,请参见文档中关于等待的here。 或者睡眠电话也可以这样做关于从不同网站或https://www.leboncoin.fr/上抓取汽车数据的用例的更多细节将有助于我们构建更规范的答案。但是,我可以使用Selenium访问页面源,如下所示:
代码块:
控制台输出:
然而,从DOM Tree可以明显看出,网站通过DataDome受到了坏机器人的保护,如下所示:
DataDome
主要特点如下:
奥特罗
有关DataDoe的文档可在以下网址找到:
验证码有什么问题?你可以用反验证码等便宜的服务来解决这个问题。 下面是NodeJS的一个示例: https://github.com/MoterHaker/bypass-captcha-examples/blob/main/geo.captcha-delivery.com.js
相关问题 更多 >
编程相关推荐