python 爬取十页网页数据 并用crv存储数据 代码
时间: 2023-09-15 13:18:13 浏览: 133
python 使用xpath/lxml爬取网页表格并存CSV
下面是一个简单的 Python 爬虫代码,可以爬取某个网站的前十页数据,并使用 CSV 存储数据。这里以爬取豆瓣电影Top250为例:
```python
import requests
from bs4 import BeautifulSoup
import csv
# 设置请求头
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'}
# 打开csv文件并写入表头
csv_file = open('douban_top250.csv', 'w', newline='', encoding='utf-8')
writer = csv.writer(csv_file)
writer.writerow(['电影名称', '电影评分', '评价人数', '电影链接'])
# 爬取前10页数据
for page in range(10):
# 构造请求url
url = 'https://movie.douban.com/top250?start=' + str(page * 25) + '&filter='
response = requests.get(url, headers=headers)
soup = BeautifulSoup(response.text, 'html.parser')
# 找到电影列表
movie_list = soup.find_all('div', class_='info')
# 循环遍历电影列表并提取信息
for movie in movie_list:
# 电影名称
title = movie.find('span', class_='title').text
# 电影评分
rating = movie.find('span', class_='rating_num').text
# 评价人数
rating_num = movie.find('div', class_='star').find_all('span')[3].text[:-3]
# 电影链接
url = movie.find('a')['href']
# 将提取的信息写入csv文件
writer.writerow([title, rating, rating_num, url])
# 关闭csv文件
csv_file.close()
```
这个代码使用了 requests 库来发送 HTTP 请求,使用 BeautifulSoup 库来解析 HTML 页面,并使用 csv 库来存储数据。程序首先设置了请求头,然后循环遍历前十页的数据,找到电影列表,并提取电影名称、评分、评价人数和电影链接等信息,然后将这些信息写入到 CSV 文件中。
阅读全文