import requests from bs4 import BeautifulSoup 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'} movies = [] for page in range(0, 250, 25): params = {'start': page, 'filter': ''} response = requests.get(url, headers=headers, params=params) soup = BeautifulSoup(response.text, 'html.parser') movie_list = soup.find('ol', class_='grid_view').find_all('li') for movie in movie_list: title = movie.find('span', class_='title').text rating = movie.find('span', class_='rating_num').text movies.append((title, rating)) for movie in movies: print(movie[0], movie[1])增加爬取导演,演员和上映时间还有电源类型
时间: 2023-11-24 15:07:00 浏览: 45
要增加爬取导演,演员,上映时间和电影类型,需要对网页的 HTML 结构进行进一步的分析,并且找到对应信息的 HTML 标签和类名。这里给出一个示例代码,可以爬取电影的导演、演员、上映时间和电影类型:
```
import requests
from bs4 import BeautifulSoup
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'}
movies = []
for page in range(0, 250, 25):
params = {'start': page, 'filter': ''}
response = requests.get(url, headers=headers, params=params)
soup = BeautifulSoup(response.text, 'html.parser')
movie_list = soup.find('ol', class_='grid_view').find_all('li')
for movie in movie_list:
title = movie.find('span', class_='title').text
rating = movie.find('span', class_='rating_num').text
info = movie.find('div', class_='bd').p.text.strip().split('\n')
director = info[0].split(':')[1].strip()
actors = [a.strip() for a in info[1].split(':')[1].split('/')]
year = info[-1].split('/')[0].strip()
genre = info[-1].split('/')[-1].strip()
movies.append((title, rating, director, actors, year, genre))
for movie in movies:
print(movie[0], movie[1], movie[2], movie[3], movie[4], movie[5])
```
这里的代码中,`movie.find('div', class_='bd').p.text` 可以获取到电影的详细信息,包括导演、演员、上映时间和电影类型。需要对这个字符串进行进一步的处理,才能得到我们需要的信息。具体处理方法可以根据字符串的格式进行调整。