萧潇墨 2019-01-29 16:24 采纳率: 66.7%
浏览 6764
已采纳

python使用requests大批量请求卡住怎么解决?

我用python的request抓取别人网站抓了几100条左右就卡死了是什么情况?

page=request.GET.get('page')
    for pages in range(1,int(page)+1):
        data = requests.get("http://okokzy.cc/?m=vod-type-id-1-pg-"+str(pages)+".html")
        data.encoding = "utf-8"
        data = data.text
        data = etree.HTML(data)
        name = data.xpath("//div[@class='xing_vb']/ul/li/span[@class='xing_vb4']/a/text()")
        link = data.xpath("//div[@class='xing_vb']/ul/li/span[@class='xing_vb4']/a/@href")
        listcode = 0
                print(link)

没有任何报错也没有发现任何异常就是打印出来的东西打印到某一条到时候就不动了

  • 写回答

6条回答 默认 最新

  • 熊猿 2019-01-29 18:51
    关注

    首先你的request最好设置一下超时,如果某个链接长时间没响应,你就会阻塞在那里;然后得百分百确认你的xpath是正确的,且是匹配里面所有url的,这个地方可以打个日志,看看是阻塞在某次循环了,还是xpath没有解析到数据

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(5条)

报告相同问题?

悬赏问题

  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵