爬取豆瓣top250主演
时间: 2023-10-24 13:05:20 浏览: 85
好的,以下是爬取豆瓣电影Top250中所有电影的主演的Python代码:
```python
import requests
from bs4 import BeautifulSoup
# 获取Top250电影的页面链接
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'}
actors = {}
# 循环获取每一页的电影信息
for i in range(10):
params = {'start': i * 25}
r = requests.get(url, headers=headers, params=params)
soup = BeautifulSoup(r.text, 'html.parser')
# 获取每一页中的所有电影信息
movie_items = soup.find_all('div', class_='info')
for movie_item in movie_items:
# 获取电影名称和主演信息
movie_name = movie_item.find('span', class_='title').text
movie_actors = movie_item.find('p', class_='').text
# 去除主演信息中的空格和换行符
movie_actors = movie_actors.replace(' ', '').replace('\n', '')
# 将主演信息转换为一个列表
movie_actors_list = movie_actors.split('...')[0].split(':')[-1].split('/')
# 将主演信息添加到actors字典中
for actor in movie_actors_list:
if actor in actors:
actors[actor].append(movie_name)
else:
actors[actor] = [movie_name]
# 打印每个主演出现的电影列表
for actor in actors:
print(actor + ': ')
for movie in actors[actor]:
print('\t' + movie)
```
注意:这个代码只是爬取Top250电影的主演信息,并没有做任何的数据处理和筛选。如果你想要更加精确地爬取某些演员的电影信息,需要在代码中进行相应的修改。另外,爬虫的使用需要遵守法律法规和道德规范,不要用于非法用途。
阅读全文