根据爬虫知识点使用jupyter编写爬取豆瓣top250的名称,排名,导演,演员,上映时间,评分等相关信息
时间: 2025-01-24 09:10:38 浏览: 41
使用Jupyter编写爬取豆瓣Top250电影信息的爬虫代码,可以利用Python的requests库进行网页请求,BeautifulSoup库进行网页解析。以下是一个示例代码,展示如何爬取豆瓣Top250电影的名称、排名、导演、演员、上映时间、评分等相关信息。
首先,确保你已经安装了所需的库:
```bash
pip install requests beautifulsoup4
```
然后,在Jupyter Notebook中编写以下代码:
```python
import requests
from bs4 import BeautifulSoup
import time
# 豆瓣Top250的URL
base_url = 'https://movie.douban.com/top250'
# 发送请求并获取页面内容
def get_page(url):
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36'
}
response = requests.get(url, headers=headers)
if response.status_code == 200:
return response.text
else:
return None
# 解析页面内容并提取电影信息
def parse_page(html):
soup = BeautifulSoup(html, 'html.parser')
movies = soup.find_all('div', class_='item')
movie_list = []
for movie in movies:
# 排名
rank = movie.find('em').text
# 名称
title = movie.find('span', class_='title').text
# 导演和演员
info = movie.find('div', class_='bd').find('p').text.strip().replace('\n', '').replace(' ', '')
# 上映时间
release_time = info.split('/')[2]
# 评分
rating = movie.find('span', class_='rating_num').text
movie_info = {
'排名': rank,
'名称': title,
'导演和演员': info,
'上映时间': release_time,
'评分': rating
}
movie_list.append(movie_info)
return movie_list
# 主函数
def main():
movies = []
for i in range(10): # 豆瓣Top250共10页
url = f'{base_url}?start={i * 25}'
html = get_page(url)
if html:
movie_list = parse_page(html)
movies.extend(movie_list)
print(f'第{i + 1}页爬取完成')
time.sleep(2) # 防止请求过于频繁
return movies
# 运行爬虫
if __name__ == '__main__':
top250_movies = main()
for movie in top250_movies:
print(movie)
```
这个代码会爬取豆瓣Top250电影的相关信息,并打印出来。你可以根据需要将爬取到的数据保存到文件或数据库中。
阅读全文
相关推荐














