2012-07-29 106 views
-5

我用python2.6的寫了下面的代碼,我想改變它python3.2和要求:如何從python2 http請求的代碼python3變更請求

import urllib, urllib2 
import cookielib 
cj = cookielib.CookieJar() 
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj)) 
urllib2.install_opener(opener) 

params = urllib.urlencode(dict(x = '0' , y = '0', url='login.php', password='1234',id='userid')) 
f = urllib2.urlopen('http://test.com/login_check.php', params) 
data = f.read() 
login_response = opener.open('http://aaa.com/bbs/confirm.php?') 
htmlContent = login_response.read() 
print htmlContent 
response.close() 
+0

'..我想將其更改爲python3.2和Requests' - 這不是一個壞主意 - 去了。通過閱讀http://docs.python-requests.org/en/latest/index.html應該可以讓你編寫你需要的函數調用。在旁註中:你發佈的代碼會爲'response.close()'引發'NameError'(或許這應該是'login_response.close()') – 2012-07-29 15:13:23

回答

0

如果你看一看在文檔,這是很簡單的:http://docs.python-requests.org/en/latest/index.html

import requests 

url = r'http://test.com/login_check.php' 
parameters = {'x' : '0' , 
       'y' : '0', 
       'url':'login.php', 
       'password':'1234', 
       'id':'userid'} 

login_response = requests.get(url, params=parameters) 
htmlContent = login_response.text 
+0

好吧,我看到這個文檔,但同樣的錯誤 =是SyntaxError: 'x'='0'無效語法 我不明白 謝謝 – 2012-07-29 16:49:47

+0

再試一次,但確保'='是':'現在。確保你嘗試瞭解發生了什麼,而不是簡單地複製和粘貼。 – TankorSmash 2012-07-29 16:51:55

+0

不,我太累了。我很多時間去嘗試。我選擇python2.7!謝謝 – 2012-07-29 17:07:44