python爬虫爬取豆瓣top250电影名称和评分。爬取250条数据存在csv文件中具体代码
时间: 2023-09-19 09:05:51 浏览: 197
好的,以下是Python爬取豆瓣Top250电影名称和评分并存储为CSV文件的代码:
```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'}
# 定义要爬取的URL地址
url = 'https://movie.douban.com/top250'
# 发送请求,获取HTML页面
response = requests.get(url, headers=headers)
# 解析HTML页面
soup = BeautifulSoup(response.text, 'html.parser')
# 定位电影列表
movie_list = soup.find('ol', class_='grid_view')
# 定义空列表存储电影名称和评分
movies = []
# 遍历电影列表,获取每部电影的名称和评分
for movie_li in movie_list.find_all('li'):
# 获取电影名称
movie_name = movie_li.find('span', class_='title').text
# 获取电影评分
movie_score = movie_li.find('span', class_='rating_num').text
# 将电影名称和评分添加到列表中
movies.append([movie_name, movie_score])
# 将数据存储到CSV文件中
with open('top250_movies.csv', 'w', encoding='utf-8', newline='') as f:
writer = csv.writer(f)
# 写入表头
writer.writerow(['电影名称', '评分'])
# 写入数据
writer.writerows(movies)
print('数据已存储到CSV文件中!')
```
在代码中,我们首先定义了请求头部信息和要爬取的URL地址,并使用requests库发送请求获取HTML页面。然后,使用BeautifulSoup库解析HTML页面,定位电影列表,并遍历电影列表获取每部电影的名称和评分。最后,将数据存储到CSV文件中。
注意事项:
1. 可能需要安装BeautifulSoup库和csv库,使用pip install beautifulsoup4 和 pip install csv 进行安装。
2. 在存储CSV文件时,需要指定编码为utf-8,并设置newline='',否则可能会出现换行符问题。
阅读全文