2015-04-28 4 views
0

Я пишу веб-скребок, используя Python и механизирую. Скребок ищет кнопку «Далее» и пеет до последней страницы, на которой нет кнопки «Далее». Это дает исключение FormNotFoundError: exception, которое останавливает цикл. Когда я пытаюсь поймать исключение, я получаю NameError: вместо фактической ошибки. Что я делаю неправильно? Альтернативно, есть ли лучший способ остановить цикл, когда я достиг конца?Python mechanize не обрабатывает форму исключение

Вот соответствующий код.

Import mechanize 
br = mechanize.Browser() 
br.open("http://example.com") 
x=0   
while x > 1: 
    try: 
     br.select_form(nr=2) 
     response = br.submit("next") 
     *otherstuff* 
    except FormNotFoundError: 
     break 

Вот выход ошибки.

File "scraping.py", line 32, in <module> 
    except FormNotFoundError: 
NameError: name 'FormNotFoundError' is not defined 

ответ

1

Вы можете попытаться изменить это:

except mechanize._mechanize.FormNotFoundError: 

вместо этого:

except FormNotFoundError: 
Смежные вопросы