Я использую цикл for для сканирования веб-страниц. Однако я сталкиваюсь с ошибкой ограничения IP-запроса при сканировании некоторых страниц. Я пытался заставить Python спать несколько секунд, когда я просматривал каждые 20 страниц, однако ошибка сохраняется. Я могу снова начать сканировать после того, как python спит 60 секунд.
Проблема в том, что каждый раз, когда возникает исключение, я теряю страницу информации. Кажется, что python перепрыгивает исключительную страницу, используя метод try-except.
Мне интересно, что лучший способ — перезапустить сканирование со страницы, которая столкнулась с исключением.
Мой вопрос заключается в том, как перезапустить сканирование с исключительной страницы.
pageNum = 0
for page in range(1, 200):
pageNum += 1
if(pageNum % 20 ==0): # every 20 pages sleep 180 secs
print 'sleeep 180 secs'
time.sleep(180) # to oppress the ip request limit
try:
for object in api.repost_timeline(id=id, count=200, page=page):
mid = object.__getattribute__("id")
# my code here to store data
except:
print "Ip request limit", page
sleep.time(60)