首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Web抓取-页面在加载5-6个请求后未加载

Web抓取-页面在加载5-6个请求后未加载
EN

Stack Overflow用户
提问于 2021-08-27 18:07:57
回答 1查看 46关注 0票数 0

我正在尝试抓取特定网站的子页面。我使用了requests和bs4。我将页面存储在用于循环的列表中。这些脚本在其他网站上运行得很好,所以我认为我的页面本身有一些问题。我不能用我的浏览器访问页面,或者只能在有限的时间(几秒钟)内访问。我已经尝试了我所有的浏览器(Chrome,Firefox,Edge,Explorer),删除了所有cookie和其他浏览数据,等等。)我使用的是头部:

代码语言:javascript
运行
复制
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.76 Safari/537.36',
    "Upgrade-Insecure-Requests": "1", "DNT": "1",
    "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", "Accept-Language": "en-US,en;q=0.5",
    "Accept-Encoding": "gzip, deflate"}

下面是请求页面的代码:

代码语言:javascript
运行
复制
cz_link= requests.get(cz_page,timeout=10, verify=False,headers=headers)

其中"cz_page“是列表中包含我想要解析的页面的项。

在加载了5或6个页面后,下一个页面将不会加载。

我试着用"https://downforeveryoneorjustme.com/“检查页面是否在运行,结果是,”就我一个人“。

有没有办法让我可以通过python请求访问页面,即使我不能在我的浏览器中加载站点?

我的下一次尝试将是在打开VPN的情况下运行脚本,但我很好奇是否有其他解决方案,当我需要运行此脚本时,我不能一直使用VPN。

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2021-09-28 12:25:04

解决方案是增加一个延迟,但要大于5秒。我体验过它,似乎在加载了5个页面后,我被阻止了,我必须等待至少10分钟才能重试。因此,我在循环中添加了一个计数器,在它达到5之后,我使用了time.sleep() 10分钟,然后重新启动了计数器。它很慢,但它是有效的。不过还是要感谢你的建议!

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

https://stackoverflow.com/questions/68957753

复制
相关文章

相似问题

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