Есть задача подключиться к серверу, ввести данные формы, нажить кнопку submit, получить вывод
Исходная страница сервера :
<form method="POST" action="blank.phtml" name="F"> <input class=send type="submit" value="Запрос" > <input class=send type="reset" value="Очистить" >
<td><input type="checkbox" name="1" > 1</td> <td><input type="checkbox" name="2" > 2</td> <td><input type="checkbox" name="3" > 3</td> <td><input type="checkbox" name="4" > 4</td>
Я использую Python Mechanize.
import mechanize site_url = 'http://examle.com' site_user= 'user' site_pass = 'password' browser = mechanize.Browser() browser.add_password(site_url,site_user,site_pass,realm=None) browser.open(site_url) page1=browser.response().read() for form in browser.forms(): print form
<F POST http://example.com application/x-www-form-urlencoded <SubmitControl(<None>=Запрос) (readonly)> <IgnoreControl(<None>=<None>)> <CheckboxControl(1=[on])> <CheckboxControl(2=[on])> <CheckboxControl(3=[on])> <CheckboxControl(4=[on])>>
response = browser.submit()
File "./test1.py", line 33, in <module> response = browser.submit() File "/usr/lib/python2.7/site-packages/mechanize-0.2.5-py2.7.egg/mechanize/_mechanize.py", line 541, in submit return self.open(self.click(*args, **kwds)) File "/usr/lib/python2.7/site-packages/mechanize-0.2.5-py2.7.egg/mechanize/_mechanize.py", line 203, in open return self._mech_open(url, data, timeout=timeout) File "/usr/lib/python2.7/site-packages/mechanize-0.2.5-py2.7.egg/mechanize/_mechanize.py", line 255, in _mech_open raise response mechanize._response.httperror_seek_wrapper: HTTP Error 401: Authorization Required