我想報廢一個網站,并再次發送資料和報廢,但是在第一步中,當我想發送一個 post 方法時,出現一個 get 錯誤,這是我的代碼
import requests
url = "https://tracking.post.ir/"
h = "Mozilla/5.0 (Linux; Android 7.0.0; SM-G960F Build/R16NW) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.84 Mobile Safari/537.36"
dat = {"test": "test"}
requests.post(url, data=dat, headers=h)
這是我的錯誤
Traceback (most recent call last):
File "/data/user/0/ru.iiec.pydroid3/files/accomp_files/iiec_run/iiec_run.py", line 31, in <module>
start(fakepyfile,mainpyfile)
File "/data/user/0/ru.iiec.pydroid3/files/accomp_files/iiec_run/iiec_run.py", line 30, in start
exec(open(mainpyfile).read(), __main__.__dict__)
File "<string>", line 5, in <module>
File "/data/user/0/ru.iiec.pydroid3/files/aarch64-linux-android/lib/python3.8/site-packages/requests/api.py", line 119, in post
return request('post', url, data=data, json=json, **kwargs)
File "/data/user/0/ru.iiec.pydroid3/files/aarch64-linux-android/lib/python3.8/site-packages/requests/api.py", line 61, in request
return session.request(method=method, url=url, **kwargs) File "/data/user/0/ru.iiec.pydroid3/files/aarch64-linux-android/lib/python3.8/site-packages/requests/sessions.py", line 528, in request
prep = self.prepare_request(req)
File "/data/user/0/ru.iiec.pydroid3/files/aarch64-linux-android/lib/python3.8/site-packages/requests/sessions.py", line 456, in prepare_request
p.prepare(
File "/data/user/0/ru.iiec.pydroid3/files/aarch64-linux-android/lib/python3.8/site-packages/requests/models.py", line 317, in prepare
self.prepare_headers(headers)
File "/data/user/0/ru.iiec.pydroid3/files/aarch64-linux-android/lib/python3.8/site-packages/requests/models.py", line 449, in prepare_headers
for header in headers.items():
AttributeError: 'str' object has no attribute 'items'
[Program finished]
我也不知道python中的urllib
uj5u.com熱心網友回復:
錯誤告訴您的是,headers需要是字典,items是生成鍵和值的元組對的字典方法。
要向您發出 POST 請求,requests您必須
import requests
url = "https://tracking.post.ir/"
h = {
"User-Agent": "Mozilla/5.0 (Linux; Android 7.0.0; SM-G960F Build/R16NW) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.84 Mobile Safari/537.36"
}
dat = {"test": "test"}
respose = requests.post(url, data=dat, headers=h)
# Do something with response here
檔案
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/312530.html
