如何将爬取出来的数据保存到csv文件里呢
时间: 2024-04-26 18:25:23 浏览: 142
爬取百度指数 代码,如果cookies失效的,麻烦替换下,爬取关键词和访问量,并保存csv
您可以使用Python中的csv模块将数据保存到CSV文件中。下面是一个简单的示例代码,可以将爬取的数据保存到CSV文件中:
``` python
import requests
import time
import csv
from bs4 import BeautifulSoup
# 构造POST请求的参数
data = {
'channelId': '1',
'page': '1',
'pageSize': '20',
'keyword': '',
'area': '',
'dayRange': '',
'category': '',
'noticetype': '',
'tenderRange': '',
'tenderProject': '',
'beginTime': '',
'endTime': ''
}
# 发送POST请求获取第1页的数据
url = 'http://www.ccgp.gov.cn/cr/list'
response = requests.post(url, data=data)
soup = BeautifulSoup(response.text, 'html.parser')
# 解析网页内容并将数据保存到列表中
data_list = []
for item in soup.find_all('div', class_='vT-srch-result-list-bid'):
title = item.find('a').get_text().strip()
date = item.find('span', class_='vT-srch-result-list-bidDate').get_text().strip()
data_list.append([title, date])
# 等待5秒后,发送POST请求获取第2页的数据
time.sleep(5)
data['page'] = '2'
response = requests.post(url, data=data)
soup = BeautifulSoup(response.text, 'html.parser')
# 解析网页内容并将数据保存到列表中
for item in soup.find_all('div', class_='vT-srch-result-list-bid'):
title = item.find('a').get_text().strip()
date = item.find('span', class_='vT-srch-result-list-bidDate').get_text().strip()
data_list.append([title, date])
# 等待5秒后,发送POST请求获取第3页的数据
time.sleep(5)
data['page'] = '3'
response = requests.post(url, data=data)
soup = BeautifulSoup(response.text, 'html.parser')
# 解析网页内容并将数据保存到列表中
for item in soup.find_all('div', class_='vT-srch-result-list-bid'):
title = item.find('a').get_text().strip()
date = item.find('span', class_='vT-srch-result-list-bidDate').get_text().strip()
data_list.append([title, date])
# 依此类推,获取剩余的页面数据
# 将数据保存到CSV文件中
with open('data.csv', 'w', newline='', encoding='utf-8-sig') as file:
writer = csv.writer(file)
writer.writerow(['标题', '日期'])
for row in data_list:
writer.writerow(row)
```
在上面的代码中,我们使用了csv库将数据保存到CSV文件中。我们首先使用`open`函数打开一个名为`data.csv`的文件,并指定使用`csv.writer`来写入数据。注意,我们在打开文件时使用了`newline=''`参数,这是为了避免在Windows系统中出现额外的空行。在写入数据之前,我们首先写入了一个表头行,然后遍历数据列表,将每一行数据写入到CSV文件中。最后,我们关闭文件句柄。
阅读全文