python 携程 机票信息 爬虫 代码
时间: 2023-11-27 07:05:17 浏览: 204
以下是爬取携程机票信息的Python代码,使用了requests和BeautifulSoup库:
```python
import requests
from bs4 import BeautifulSoup
# 构造请求头
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'}
# 构造请求参数
params = {
'DCity1': 'BJS', # 出发地
'ACity1': 'SHA', # 目的地
'SearchType': 'S', # 单程
'DepDate1': '2021-12-01', # 出发日期
'IsLowestPrice': 'false', # 不是最低价
'Airline': '', # 航空公司
'FlightNo': '', # 航班号
'IsDirectFlight': 'false', # 不是直达
'SortType': 'a', # 排序方式
'Catalog': '', # 目录
'AllianceID': '', # 联盟ID
'SID': '', # SID
'OUID': '', # OUID
'IsInternal': 'false', # 不是内部
'Action': 'Query', # 查询
'IsDomestic': 'true' # 国内
}
# 发送请求
response = requests.get('https://flights.ctrip.com/itinerary/oneway/BJS-SHA', headers=headers, params=params)
# 解析网页
soup = BeautifulSoup(response.text, 'html.parser')
# 获取机票信息
flight_list = soup.find_all('div', class_='flight_item')
# 输出机票信息
for flight in flight_list:
print('航班号:', flight['data-flight'])
print('航空公司:', flight['data-airline'])
print('起飞时间:', flight.find('span', class_='depart_time').text)
print('到达时间:', flight.find('span', class_='arrive_time').text)
print('出发机场:', flight.find('span', class_='airport').text)
print('到达机场:', flight.find_all('span', class_='airport')[1].text)
print('机型:', flight.find('span', class_='plane').text)
print('价格:', flight.find('span', class_='base_price02').text)
print('--------')
```
阅读全文