1
我剛開始使用python 3.3.3中的urllib,我可以使用urllib.request.urlopen()
來發出POST請求。但是,我想要做的是使用HTTPS的POST。我看到urlopen
的文檔中提到「目前HTTP請求是唯一使用數據的請求」(並且我需要POST請求的'data'參數)。Python3 urllib POST和HTTPS
然後,我看到urllib.request.HTTPSHandler
似乎能夠通過其https_open()
進行HTTPS POST。不幸的是,我似乎無法弄清楚如何使用這個功能。現在,我只想做一個簡單的HTTPS與此處理程序GET,所以我試圖做的是
import urllib.request
r = urllib.request.Request("https://www.google.com")
handler = urllib.request.HTTPSHandler()
handler.https_open(r)
但是這會導致AttributeError: 'Request' object has no attribute 'timeout'
我怎樣才能得到HTTPSHandler.https_open()
工作?或者根本urlopen
調用https_open
功能,如果我用
opener = urllib.request.build_opener(urllib.request.HTTPSHandler)
urllib.request.install_opener(opener)
前
,實際上確實讓HTTPS POST請求了嗎?謝謝!
嗨,我在帖子中說我需要的「數據」的參數,因爲我必須做一個POST請求。沒有數據,我只能做出GET請求。 – user1448268