python爬虫实战:抓取豆瓣电影 Top250数据
1.1 分析网页结构
首先,打开豆瓣电影 Top250 页面,并通过浏览器的开发者工具(F12)观察网页的结构。每部电影的标题和评分位于特定的 HTML 标签内,可以通过这些标签来提取数据。
1.2 编写爬虫
import requests
from bs4 import BeautifulSoup
def get_movies(url):
headers = {'User-Agent': 'Mozilla/5.0'}
response = requests.get(url, headers=headers)
soup = BeautifulSoup(response.text, 'lxml')
movies = []
for item in soup.find_all('div', class_='item'):
title = item.find('span', class_='title').text
rating = item.find('span', class_='rating_num').text
movies.append({'title': title, 'rating': rating})
return movies
url = 'https://movie.douban.com/top250'
movies = get_movies(url)
# 输出爬取的电影信息
for movie in movies:
print(movie)
1.3 结果展示
通过该爬虫可以成功抓取豆瓣电影 Top250 页面的电影标题和评分信息。
该段代码只能抓取一页的数据,如果你想抓取整个 Top250 列表,就需要处理分页问题。豆瓣 Top250 分为 10 页,每页显示 25 部电影,所以你需要遍历多个页面,逐页抓取数据。
如何处理分页
通过分析 URL 发现,豆瓣的分页信息通过 URL 的 start
参数控制。例如:
- 第一页的 URL 是:
https://movie.douban.com/top250?start=0
- 第二页的 URL 是:
https://movie.douban.com/top250?start=25
- 第三页的 URL 是:
https://movie.douban.com/top250?start=50
每次递增 25
就可以访问到下一页。因此,可以通过一个循环来构建不同的 URL,并抓取多页的数据。
详细文件已上传至资源文件中,可自行下载【免费】爬取豆瓣电影top250数据资源-CSDN文库
原文地址:https://blog.csdn.net/JH_joker/article/details/142948503
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!