用python爬取川菜数据并写成csv文件
时间: 2024-12-19 13:27:52 浏览: 48
在Python中,我们可以使用requests库来发送HTTP请求获取网页内容,然后利用BeautifulSoup库解析HTML,提取我们需要的数据。对于川菜数据,通常需要找到包含菜名、食材、做法等信息的HTML元素。下面是一个简单的步骤概述:
1. **安装必要的库**:
首先确保已安装`requests`, `beautifulsoup4`, 和 `pandas` 这些库。如果还没有安装,可以使用以下命令安装:
```
pip install requests beautifulsoup4 pandas
```
2. **编写爬虫脚本**:
```python
import requests
from bs4 import BeautifulSoup
import csv
# 目标网站URL
url = 'http://example.com/cui-cai-list' # 替换为你实际的目标网址
# 发送GET请求
response = requests.get(url)
# 检查请求是否成功
if response.status_code == 200:
soup = BeautifulSoup(response.text, 'html.parser')
# 解析HTML结构,查找川菜信息(假设菜名在<h2>标签内,食材和做法在<p>标签内)
data_list = []
for item in soup.find_all('div', class_='recipe-item'):
title = item.h2.text.strip()
ingredients = [p.text.strip() for p in item.find_all('p', class_='ingredients')]
instructions = item.find('p', class_='instructions').text.strip() if item.find('p', class_='instructions') else ''
data_list.append((title, ingredients, instructions))
# 将数据写入CSV文件
with open('cui_cai_data.csv', 'w', newline='', encoding='utf-8') as csvfile:
fieldnames = ['菜名', '食材', '做法']
writer = csv.DictWriter(csvfile, fieldnames=fieldnames)
writer.writeheader()
writer.writerows(data_list)
else:
print("请求失败,状态码:", response.status_code)
```
3. **运行脚本**:
找到合适的目标网站并替换URL后,运行上述代码即可将川菜数据保存为CSV文件。
阅读全文
相关推荐














