首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >沃尔玛铲运机受阻

沃尔玛铲运机受阻
EN

Stack Overflow用户
提问于 2021-04-05 19:33:19
回答 1查看 775关注 0票数 0

我正试着从1-100页中摘取沃尔玛的一个分类。在请求页面之前,我已经实现了随机头和随机等待时间,但是在抓取前几个页面之后,仍然会使用captcha。沃尔玛是超级擅长发现铲运机,还是我做错了什么?

我使用的是selenium,bs4和random_user_agent。

代码:

代码语言:javascript
复制
# Randomize User Agents
software_names = [SoftwareName.CHROME.value]
operating_systems = [OperatingSystem.WINDOWS.value]

user_agent_rotator = UserAgent(
    software_names=software_names, operating_systems=operating_systems, limit=1000)

user_agents = user_agent_rotator.get_user_agents()

################################################

# Selenium
options = webdriver.ChromeOptions()
options.add_argument('--profile-directory=Profile 1')
options.add_argument('use-fake-ui-for-media-stream')
options.add_argument(
    'load-extension=' + r'ad blocker path here')
options.add_argument("window-size=900,1080")

driver = webdriver.Chrome(
    ChromeDriverManager().install(), options=options)

driver.execute_cdp_cmd('Network.setUserAgentOverride', {
    "userAgent": user_agent_rotator.get_random_user_agent()})
 driver.get(url)

 ################################################

# Randomize time between requests
time.sleep(randint(5, 15))  

这就是我一直想做的,这样我就不会被阻止。有没有更好的方法?谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-04-05 19:41:41

对于所有请求,您的IP仍然是相同的。您可以考虑使用python (当然需要花费更长的时间),因为请求是通过TOR路由的。我不熟悉使用selenium在TOR上应用代理,但我敢打赌,您可以找到很多教程。

不过,沃尔玛可能有理由实施这种captcha机制,因此可能会寻找另一种获取数据的选择。

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

https://stackoverflow.com/questions/66958754

复制
相关文章

相似问题

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