怎么将爬取出来的数据保存到csv文件li
时间: 2024-03-08 08:47:00 浏览: 14
您可以使用Python中的csv模块将数据保存到csv文件中。下面是一个简单的示例代码:
``` python
import csv
# 假设您已经从网页上爬取到了数据,数据保存在一个列表中
data = [
['张三', '18', '男'],
['李四', '22', '女'],
['王五', '25', '男']
]
# 将数据保存到csv文件中
with open('data.csv', 'w', newline='') as file:
writer = csv.writer(file)
for row in data:
writer.writerow(row)
```
在上面的代码中,我们首先导入了csv模块。然后定义了一个数据列表,其中包含了三个人的姓名、年龄和性别。接下来,我们使用`open`函数打开一个名为`data.csv`的文件,并指定使用`csv.writer`来写入数据。最后,我们遍历数据列表,将每一行数据写入到csv文件中。注意,我们在打开文件时使用了`newline=''`参数,这是为了避免在Windows系统中出现额外的空行。
相关问题
将爬取的数据存入csv,请补充进上面的代码里
好的,以下是将爬取的数据存入csv文件的代码:
```python
import requests
from bs4 import BeautifulSoup
import csv
url = "https://www.bilibili.com/v/popular/rank/food" # 美食区排行榜URL地址
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) # 发送GET请求
html = response.text # 获取HTML源代码
soup = BeautifulSoup(html, 'html.parser') # 创建BeautifulSoup对象
videos = [] # 存储视频信息的列表
# 查找视频信息
for li in soup.find_all('li', class_='rank-item'):
title = li.find('a', class_='title').text.strip() # 视频标题
play_num = li.find('span', class_='data-box').find_all('span')[0].text.strip() # 视频播放量
danmu_num = li.find('span', class_='data-box').find_all('span')[1].text.strip() # 视频弹幕数
video = {'title': title, 'play_num': play_num, 'danmu_num': danmu_num} # 存储视频信息的字典
videos.append(video) # 将视频信息字典添加到列表中
# 将视频信息保存到csv文件
with open('videos.csv', mode='w', encoding='utf-8', newline='') as f:
writer = csv.writer(f)
writer.writerow(['标题', '播放量', '弹幕数']) # 写入表头
for video in videos:
writer.writerow([video['title'], video['play_num'], video['danmu_num']]) # 写入视频信息
print('数据已保存到csv文件中!')
```
这段代码会将爬取的视频信息存储到名为`videos.csv`的csv文件中,并输出提示信息。您可以在`writer.writerow()`方法中添加需要存储的数据字段。
爬取国家政策的代码复杂版并保存成csv文件
好的,以下是一个稍微复杂一些的爬取国家政策并保存成csv文件的Python代码,供您参考:
```python
import requests
from bs4 import BeautifulSoup
import csv
url = 'http://www.gov.cn/zhengce/zuixin.htm' # 国家政策网站的最新政策页面
response = requests.get(url)
soup = BeautifulSoup(response.content, 'html.parser')
news_list = soup.select('.news_box li') # 获取新闻列表
with open('gov_policy.csv', 'w', encoding='utf-8', newline='') as file:
writer = csv.writer(file)
writer.writerow(['标题', '链接', '发布日期']) # 写入csv文件的表头
for news in news_list:
title = news.select_one('a').text # 获取新闻标题
link = news.select_one('a')['href'] # 获取新闻链接
date = news.select_one('.time').text # 获取新闻发布日期
writer.writerow([title, link, date]) # 写入一行新闻数据
print('数据已保存到gov_policy.csv文件中')
```
这个代码会将爬取到的新闻数据保存到名为`gov_policy.csv`的csv文件中,每行数据包含三个字段:标题、链接、发布日期。需要注意的是,csv文件的编码应该使用`utf-8`,否则可能会出现乱码。