我想在 python 中創建一個像下圖這樣的 post 請求,它回傳我在瀏覽器中收到的資料:

cookie如下:
為此,我撰寫了以下代碼:
import requests
url = "https://flight-api-v1.utravs.com/Flight/statistic/FlightPriceStatistics"
data = {
"minimumPriceStatisticRequest": {
"$id": 1,
"availabilityRequest": {
"$id": 2,
"segments": {
"$id": 3,
"$values": [
{
"$id": 4,
"destination": "KIH-Kish-all",
"origin": "THR-Tehran-all",
"departureDateTime": "2021-12-02T00:00:00.000Z",
"uniqueIndex": 0
}
]
},
"passengers": {
"$id": 5,
"$values": [
{
"$id": 6,
"type": 1,
"quantity": 1,
"optionalServices": {
"$id": 7,
"$values": []
}
}
]
},
"travelDetails": {
"$id": 8,
"cabinType": 1,
"airTripType": 1,
"stopQuantityType": 3,
"pricingSourceType": 3
},
"availabilityType": 0
},
"minRange": 10,
"maxRange": 10
}
}
x = requests.post(url, data=data)
print(x.text)
但是我沒有從服務器收到正確的資訊。
uj5u.com熱心網友回復:
你需要發布一個
application/json請求,所以使用json引數requests.post()您正在與之通信的api似乎需要某種身份驗證,請嘗試使用
cookies引數移植會話cookiedata = {...} cookies = {"_session": "1ac[..]"} response = requests.post(url, json=data, cookies=cookies)
uj5u.com熱心網友回復:
這會給你你想要的:
import requests
url = "https://flight-api-v1.utravs.com/Flight/statistic/FlightPriceStatistics"
data = {
"minimumPriceStatisticRequest": {
"$id": 1,
"availabilityRequest": {
"$id": 2,
"segments": {
"$id": 3,
"$values": [
{
"$id": 4,
"destination": "KIH-Kish-all",
"origin": "THR-Tehran-all",
"departureDateTime": "2021-12-02T00:00:00.000Z",
"uniqueIndex": 0
}
]
},
"passengers": {
"$id": 5,
"$values": [
{
"$id": 6,
"type": 1,
"quantity": 1,
"optionalServices": {
"$id": 7,
"$values": []
}
}
]
},
"travelDetails": {
"$id": 8,
"cabinType": 1,
"airTripType": 1,
"stopQuantityType": 3,
"pricingSourceType": 3
},
"availabilityType": 0
},
"minRange": 10,
"maxRange": 10
}
}
with requests.Session() as session:
cookies = {"_session": "1acda9e8-3051-47bb-bddf-9d68553ebbee"}
headers = {"Accept": "application/json"}
(x := session.post(url, json=data, cookies=cookies, headers=headers)).raise_for_status()
print(x.json()['Result'])
注意:此答案中使用的會話 cookie 可能會過期。所以,雖然它現在有效,但它可能并不總是有效
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/372160.html
上一篇:滑動擴展影片旁邊的專案
