我正在使用Python並嘗試通過HTTP-Post請求向服務器發送字典(包含動態數據)。 什麼是最有效的實施方式?通過發佈請求傳輸字典
8
A
回答
2
8
使用urllib.urlencode
將字典編碼爲POST。
import urllib
import urllib2
mydict = {'key1': 'value1', 'key2': 'value2'}
encoded_dict = urllib.urlencode(mydict)
request = urllib2.Request(myurl, encoded_dict)
# now make the request
response = request.urlopen().read()
0
import urllib2
import json
pydict = {'list': [{'k1': '60411', 'k2': 'val'}], 'Id': '775'}
jsondata = json.dumps(pydict)
postreq = urllib2.Request(_url, jsondata)
postreq.add_header('Content-Type', 'application/json')
resp = urllib2.urlopen(postreq)
print "resp:", resp.read()
2
另外還有requests庫:
payload = {'key1': 'value1', 'key2': 'value2'}
r = requests.post("http://httpbin.org/post", data=payload)
相關問題
- 1. 通過發佈請求上傳文件
- 2. 通過發佈請求傳輸django二進制文件數據
- 3. 通過ASP.net發送HTTP發佈請求
- 4. 通過Chai的發佈請求
- 5. 通過Python請求發佈到Bitbucket
- 6. 通過QNetworkAccessManager的發佈請求
- 7. 上傳圖片/通過curl + scrot + xclip發佈帖子請求
- 8. 未通過jQuery Ajax請求傳遞的發佈變量?
- 9. Python3請求 - 通過表單數據發佈請求
- 10. Ajax請求通過發佈請求獲取文件
- 11. 通過HTML發佈請求發送HTML5畫布數據
- 12. 通過tcp/ip傳輸數據並通過HTTP GET/POST請求發送。 iPhone Webserver
- 13. 通過POST請求提交CSV - 發佈後通過空(c#)
- 14. 通過Fetch反應本機發布請求引發網絡請求失敗
- 15. AJAX通過API發佈請求 - 解析請求參數時發生錯誤
- 16. PUT字典請求
- 17. 使用請求發佈複雜數據字典python
- 18. gwt通過發佈請求發送對象
- 19. 如何通過springXD發送http-client發佈請求
- 20. 通過工廠在Angular 1.x中發送發佈請求
- 21. 如何通過網絡瀏覽器發送發佈請求
- 22. 通過Net :: HTTP發送Ruby中的http發佈請求
- 23. 通過SSL發送請求時無法發佈文件數據
- 24. 通過發佈請求發送.dex文件android studio
- 25. 通過HTTP請求發送發佈數據POST
- 26. 無法通過file_get_contents在發佈請求中發送數據
- 27. 通過C++桌面應用程序發送發佈請求
- 28. 發送默認數據通過ajax發佈請求
- 29. 如何通過Angular向ASP.net web API發送發佈請求
- 30. 用wxHTTP上傳wxImage發佈請求
這將爲字符串的工作,但也有可能是其它數據類型的問題。 – 2010-11-12 10:55:57
這是我第一次接觸到的答案,當我嘗試打字時,似乎出現了一個小問題。對我有效的是:response = urllib2.urlopen(request).read() – Paul 2014-11-19 15:43:00