python3的post請求
A. 如何用python寫一個http post請求
importurllib2
importurllib
#定義一個要提交的數據數組(字典)
data={}
data['username']='zgx030030'
data['password']='123456'
#定義post的地址
url='<ahref="<ahref="http://www.test.com/post/'"target="_blank">http://www.test.com/post/'</a>"target="_blank">http://www.test.com/post/'"target="_blank">http://www.test.com/post/'</a></a>
post_data=urllib.urlencode(data)
#提交,發送數據
req=urllib2.urlopen(url,post_data)
#獲取提交後返回的信息
content=req.read()
B. python3.4中的post請求怎麼寫
fromurllibimportrequest
request.urlopen()
defpost(url,data=None,headers=None,timeout=2,decode='utf-8'):
rt=HttpReturn()
ifheadersisNone:
headers={}
post_data=urllib.parse.urlencode(data).encode(decode)
try:
req=urllib.request.Request(url,post_data,headers)
hr=urllib.request.urlopen(req,timeout=timeout)
rt=HttpReturn()
rt.obj=rt
rt.text=hr.read().decode('utf-8')
rt.status=hr.status
finally:
returnrt
C. 如何用Python寫一個post請求調用api
使用http庫就可以做到
參考:
importhttp.client
conn=http.client.HTTPConnection(host='123.56.129.164',port=8080)
if__name__=='__main__':
header={'content-type':'image/jpeg'}
body=open(u'D:\test.jpg','rb').read();
conn.request('POST',u'User/uploadFile/id/ba1da387-cd13-4ead-b1e7-c7c443840b3a',headers=header,body=body)
#response=conn.getresponse()
D. Python3發送Post請求報403
403錯誤分很多種,但總的來說都是不具備伺服器相應訪問許可權所致。
可以嘗試更改為https協議、使用cookie、修改POST請求為正確格式等方法。
E. python3.4中的post請求怎麼寫
python3使用
from urllib import request
request.urlopen()
F. 如何用Python寫一個http post請求
1
2
3
4
5
6
7
8
9
10
from poster.encode import multipart_encode
from poster.streaminghttp import register_openers
url = "http://www.example.com"
body_value = {"package": "com.tencent.lian","version_code": "66" }
register_openers()
datagen, re_headers = multipart_encode(body_value)
request = urllib2.Request(url, datagen, re_headers)
# 如果有請求頭數據,則添加請求頭
request .add_header(keys, headers[keys])
result = urllib2.urlopen(request ).read()
二、application/json
1
2
3
4
5
6
7
8
import json
url = "http://www.example.com"
body_value = {"package": "com.tencent.lian","version_code": "66" }
register_openers()
body_value = json.JSONEncoder().encode(body_value)
request = urllib2.Request(url, body_value)
request .add_header(keys, headers[keys])
result = urllib2.urlopen(request ).read()
G. Python3中對壓縮post請求的處理,我用fillder獲取到的url編碼的post請求數據比
我是做爬蟲的:
我感覺是不是你的思路有問題?
post數據和get數據弄混了,post提交數據,提交數據的地址就是actions的指向,如果沒有寫,那就是當前頁,抓包應該都是一樣的呀!get提交數據是直接在url中帶參數的,抓包都是一樣的,你可能抓包出問題了
H. python3里的requests用post請求可以添加代理嗎 是不是跟get請求一樣
當然可以添加代理,如果你想為請求添加 HTTP 頭部,只要簡單地傳遞一個dict給headers參數就可以了。
url='https://www..com'
headers={'user-agent':'my-app/0.0.1'}
r=requests.get(url,headers=headers)
如果你想添加一個代理ip的話,需要一個可以用的ip代理。
headers={"User-Agent":"Mozilla/5.0(WindowsNT6.1;WOW64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/65.0.3325.181Safari/537.36",
}
proxies={"http":"http://202.121.96.33:8086"}
response=requests.get(url,headers=headers,proxies=proxies)