【Python】爬虫Ip代理问题

把所有IP做成列表之后,并且用random随机取一个Ip代理,但有些IP质量有问题,响应要10多秒最后报错,如何在响应超过指定秒数后没有响应就自动换ip

那你至少需要研究一下多线程的技术,否则你主线程已经阻塞住了,写什么代码也不执行啊

用循环,循环内部用try except结构,每次try失败就用except对失败计数并切换ip,直到达到循环条件或成功

while
  try:
    get
    if success:
      break
  except:
    count++
    ip =ip[count]#切换ip
  if count>max
  print(fail)
  break

大概这种结构

os.popen ‘ping + ip‘ 测试返回结果在指定时间内有无正常返回,没有就继续ping 下一个ip

so easy 设置 requests的timeout 判断返回的response的状态吗是否等于200,不等于就在请求一次ip,替换掉继续请求。可以写成回调函数,调用自己那种