Я пытаюсь удалить некоторые данные с веб-сайта. Сценарии, которые я пытаюсь написать, должны получить содержимое страницы:
http://www.atpworldtour.com/Rankings/Singles.aspx
Должен имитировать пользователя, просматривающего каждую опцию для дополнительных позиций и дат, и имитировать нажатие на «Перейти», после чего после извлечения данных следует использовать функцию возврата.
На данный момент я пытался просто выбрать эту опцию для дополнительной репутации:
<option value="101" >101-200</option>
Вот моя (плохая) попытка сделать это:
from mechanize import Browser
from BeautifulSoup import BeautifulSoup
import re
import urllib2
br = Browser();
br.open("http://www.atpworldtour.com/Rankings/Singles.aspx");
br.select_form(nr=0);
br["r"] = "101";
response = br.submit();
Однако он просто терпит неудачу в select_form(nr=0), которая должна выбирать первую форму.
Это журнал, возвращаемый Python:
>>> from mechanize import Browser
>>>
>>> from BeautifulSoup import BeautifulSoup
>>> import re
>>> import urllib2
>>>
>>>
>>>
>>> br = Browser();
>>> br.open("http://www.atpworldtour.com/Rankings/Singles.aspx");
<response_seek_wrapper at 0x311bb48L whose wrapped object = <closeable_response
at 0x311be88L whose fp = <socket._fileobject object at 0x0000000002C94408>>>
>>> br.select_form(nr=0);
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "build\bdist.win-amd64\egg\mechanize\_mechanize.py", line 505, in select_
form
File "build\bdist.win-amd64\egg\mechanize\_html.py", line 546, in __getattr__
File "build\bdist.win-amd64\egg\mechanize\_html.py", line 559, in forms
File "build\bdist.win-amd64\egg\mechanize\_html.py", line 228, in forms
mechanize._html.ParseError
Я не смог найти надлежащего объяснения всех функций на домашней странице mechanize. Может ли кто-нибудь указать мне правильный учебник по использованию форм и Mechanize или помочь мне в этом конкретном вопросе?
Энтони