python 爬取新浪财经十页网页数据 并用crv存储数据 代码
时间: 2023-09-06 10:12:14 浏览: 168
好的,以下是 Python 爬取新浪财经十页网页数据并用 CSV 存储数据的代码:
```python
import csv
import requests
from bs4 import BeautifulSoup
# 定义要爬取的页数和保存的文件名
pages = 10
filename = 'sina_finance.csv'
# 新建 CSV 文件并写入表头
with open(filename, 'w', newline='') as f:
writer = csv.writer(f)
writer.writerow(['标题', '链接', '时间'])
# 循环爬取每一页的数据
for page in range(1, pages+1):
url = 'https://finance.sina.com.cn/roll/index.d.html?cid=56921&page={}'.format(page)
res = requests.get(url)
res.encoding = 'utf-8'
soup = BeautifulSoup(res.text, 'html.parser')
# 定位新闻列表
news_list = soup.select('.list01 li')
# 循环处理每条新闻并写入 CSV 文件
with open(filename, 'a', newline='', encoding='utf-8') as f:
writer = csv.writer(f)
for news in news_list:
title = news.select_one('a').text.strip()
link = news.select_one('a')['href']
time = news.select_one('.time').text.strip()
writer.writerow([title, link, time])
print('已完成第{}页数据的爬取'.format(page))
```
这个程序会爬取新浪财经滚动新闻的前十页数据,包括每条新闻的标题、链接和时间,并将这些数据存储到名为 `sina_finance.csv` 的 CSV 文件中。每一页的数据爬取完成后,程序会在控制台输出一条提示信息。