这是因为Amadeus无法返回美国航空公司(AA)的航班信息。解决此问题的方法是使用两个API,即Amadeus Flight Offers Search API和Amadeus Flight Offers Price API。 以下是使用Python代码如何合并这两个API以获得AA航班信息的示例:
import requests
import json
# 查询航班信息
url = "https://test.api.amadeus.com/v1/shopping/flight-offers"
headers = {
"Authorization": "Bearer ACCESS_TOKEN",
"Content-Type": "application/json"
}
params = {
"originLocationCode": "NYC",
"destinationLocationCode": "LAX",
"departureDate": "2022-05-01",
"returnDate": "2022-05-10",
"adults": 1,
"max": 1
}
response = requests.get(url, headers=headers, params=params)
responseData = json.loads(response.text)
flightOffers = responseData["data"]
# 获取AA航班的价格信息
for offer in flightOffers:
priceUrl = "https://test.api.amadeus.com/v2/shopping/flight-offers/pricing"
pricePayload = {
"data": {
"type": "flight-offers-pricing",
"flightOffers": [
{
"type": "flight-offer",
"id": offer["id"]
}
],
"pricingOptions": {
"includedCheckedBagsOnly": True,
"fareType": [
"PUBLISHED",
"MARKET"
],
"validatingAirlineCodes": [
"AA"
]
}
}
}
priceResponse = requests.post(priceUrl, headers=headers, json=pricePayload)
priceData = json.loads(priceResponse.text)
print(priceData)
在这个示例代码中,我们先使用Amadeus Flight Offers Search API查询航班信息,然后迭代每个提供的航班信息,最后使用Amadeus Flight Offers Price API将每个航