我試圖提交使用Python 3形式在Python 2我做了以下內容:提交表單在Python 3
br=mechanize.Browser()
br.set_handler_robots(False)
br.addheaders = [('User-agent', 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.1) Gecko/2008071615 Fedora/3.0.1-1.fc9 Firefox/3.0.1')]
br.open(url)
br.select_form(nr=0)
br.form['form_name']=entry
br.submit()
它的工作原理。在Python 3中,我嘗試使用下面的代碼:
data={'form_name':entry}
data=urllib.parse.urlencode(data)
data=data.encode('utf-8')
headers={'User-Agent': 'Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.1) Gecko/2008071615 Fedora/3.0.1-1.fc9 Firefox/3.0.1'}
req=urllib.request.Request(url,data,headers)
response=urllib.request.urlopen(req)
但它顯示HTTP錯誤405.任何人都可以請解釋如何在Python 3中工作嗎?
也許你應該看看[請求](https://pypi.python.org/pypi/requests)?它與Python 3兼容並且更加pythonic。 – floqqi 2013-02-22 11:24:12