python爬取豆瓣电影TOP250并保存csv
时间: 2023-07-29 18:14:01 浏览: 191
好的,我来给你讲一下具体的步骤。
首先,我们需要用Python的requests库和BeautifulSoup库来爬取豆瓣电影TOP250的页面内容。具体代码如下:
```python
import requests
from bs4 import BeautifulSoup
import csv
# 发送请求并获取页面内容
url = 'https://movie.douban.com/top250'
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)
soup = BeautifulSoup(response.content, 'html.parser')
```
然后,我们需要用BeautifulSoup库来解析页面内容,并把需要的信息保存到一个列表里。这里我们需要获取电影的排名、电影名、评分、评价人数和电影简介。具体代码如下:
```python
# 解析页面内容并获取需要的信息
movie_list = []
for item in soup.select('.item'):
rank = item.select('em')[0].get_text()
title = item.select('.title')[0].get_text().split('/')[0].strip()
rating = item.select('.rating_num')[0].get_text()
rating_num = item.select('.rating_num')[0].find_next_sibling().find_next_sibling().get_text().replace('人评价', '')
movie_info = item.select('.bd p')[0].get_text().strip()
movie_list.append([rank, title, rating, rating_num, movie_info])
```
最后,我们把数据保存为csv格式的文件。具体代码如下:
```python
# 将数据保存为csv格式的文件
with open('douban_top250.csv', 'w', newline='', encoding='utf-8') as f:
writer = csv.writer(f)
writer.writerow(['排名', '电影名', '评分', '评价人数', '电影简介'])
for movie in movie_list:
writer.writerow(movie)
```
这样,我们就完成了Python爬取豆瓣电影TOP250并保存csv的操作。
阅读全文