豆瓣电影 TOP250 爬取代码 - Python 实现
以下是使用 Python 爬取豆瓣 TOP250 电影的代码:
import requests
from bs4 import BeautifulSoup
url = 'https://movie.douban.com/top250'
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0;Win64) AppleWebkit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'}
def get_movie_list(url):
response = requests.get(url, headers=headers)
soup = BeautifulSoup(response.text, 'html.parser')
movie_list = soup.find(class_='grid_view').find_all('li')
return movie_list
def parse_movie_info(movie):
rank = movie.find(class_='pic').em.text
title = movie.find(class_='hd').a.span.text
info = movie.find(class_='bd').p.text.strip()
rating = movie.find(class_='rating_num').text
return {'rank': rank, 'title': title, 'info': info, 'rating': rating}
def print_movie_info(movie_info):
print('排名:', movie_info['rank'])
print('片名:', movie_info['title'])
print('信息:', movie_info['info'])
print('评分:', movie_info['rating'])
print('------------------------')
if __name__ == '__main__':
movie_list = get_movie_list(url)
for movie in movie_list:
movie_info = parse_movie_info(movie)
print_movie_info(movie_info)
在这个代码中,我们首先定义了一个get_movie_list函数来获取电影列表,该函数使用requests库发送HTTP请求,然后使用BeautifulSoup库解析HTML页面,提取出电影列表。接着我们定义了一个parse_movie_info函数,用于解析每一部电影的信息,包括排名、片名、信息和评分。最后,我们使用print_movie_info函数来打印每一部电影的信息。
在main函数中,我们首先调用get_movie_list函数获取电影列表,然后使用for循环遍历每一部电影。对于每一部电影,我们调用parse_movie_info函数解析电影信息,并使用print_movie_info函数打印出来。
原文地址: https://www.cveoy.top/t/topic/qo7s 著作权归作者所有。请勿转载和采集!