请教各位先进,还请大家教导
最近在写爬虫程式
因为有网页需要等待,网页的元素不一定能立刻抓取
若设定时间等待网页跑完则会拖慢速度
因此现在的写法是,当抓不到报错后直接重来
如果原始爬虫 function 为 get_f,可能会产生数种错误 E1、E2、E3..
我定义
def f1_f:
try:
get_f()
except E1:
get_f()
else:
get_f()
因为策略是报错后重来,所以把 f1_f 包裹
定义
def f2_f:
try:
f1_f()
except E1:
f1_f()
else:
f1_f()
然后定义f3_f,包住f2_f。再定义f4_f,包住f3_f......
因为还是要避免是其他原因造成,所以期望10次后停止
想询问有什么比较简洁的写法,可以不用用一层包一层的方式写
谢谢