把所有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,替换掉继续请求。可以写成回调函数,调用自己那种