python 爬取网站机票价格
时间: 2023-08-21 08:04:07 浏览: 84
教你用Python预测机票价格
爬取网站机票价格需要用到 Python 的 requests 库和 BeautifulSoup 库。具体步骤如下:
1. 安装 requests 库和 BeautifulSoup 库。可以使用 pip 命令进行安装:
```python
pip install requests
pip install beautifulsoup4
```
2. 分析网页结构,找到需要爬取的数据。以携程网为例,搜索机票后得到的网页中,每个机票信息都包含在一个 class 为 `flight_item` 的 div 标签中,机票价格在标签内的 class 为 `base_price02` 的 span 标签中。
3. 编写 Python 程序,使用 requests 库发送 GET 请求获取网页内容,再使用 BeautifulSoup 库解析网页,找到需要的机票价格信息并输出。
示例代码如下:
```python
import requests
from bs4 import BeautifulSoup
url = 'https://flights.ctrip.com/itinerary/oneway/sha-bkk?date=2022-01-01'
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'}
response = requests.get(url, headers=headers)
soup = BeautifulSoup(response.text, 'html.parser')
items = soup.find_all('div', class_='flight_item')
for item in items:
price = item.find('span', class_='base_price02').text
print(price)
```
上述代码中,首先定义了需要爬取的网址和请求头。然后使用 requests 库发送 GET 请求获取网页内容。接着使用 BeautifulSoup 库解析网页,找到所有 class 为 `flight_item` 的 div 标签,遍历每个标签,找到其中的 class 为 `base_price02` 的 span 标签,获取机票价格并输出。
需要注意的是,爬取网站数据可能会涉及到法律风险,请遵守相关规定。
阅读全文