Пират, я согласен, этого не должно происходить, вы делаете в точности то, что написано на странице документации по адресу wwwsearch.sourceforge.net/mechanize/; Я попробовал код, похожий на ваш, и получил тот же результат, где он остановился после первой итерации.
Однако я нашел обходной путь, а именно, чтобы сохранить URL-адреса ссылок из links () в списке, а затем следовать каждому URL-адресу из этого списка:
from mechanize import Browser
br = Browser()
linklist = []
br.open(your_page_here)
for link in br.links(url_regex='/test/'): linklist.append(link.url)
for url in linklist:
br.open(url)
print br.title()
Это уродливо, и вам не нужно это делать, но, похоже, это сработает.
Я не очень доволен механизацией для подобных ошибок (и проблема, с которой я столкнулся при механизации, плохо обрабатывающей две кнопки отправки ), но она очень проста в установке, кажется довольно переносимой и может работать в автономном режиме (с помощью простых заданий cron) легко сравнивать с другими средами тестирования, такими как Selenium (seleniumhq dot org), который выглядит великолепно, но, кажется, намного больше требует для фактической настройки и использования.