首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何使用 Python 爬取豆瓣电影 Top250?

经过一个多星期的学习,对 python 的语法有了一定了解,马上动手做了一个爬虫,检验学习效果。

这次爬取数据的目标是:豆瓣电影 Top250 中每一部电影的名称、排名、链接、名言 和 评分。

准备工作

运行平台:windows10

IDE:PyCharm

requests、BeautifulSoup库(使用pip进行安装)

第一步:向服务器发送请求,获得响应

由于豆瓣电影 Top250 上信息均在 html 源码中,故需获取其源码,使用 requests 库。代码如下:

第二步:对源码进行解析,提取

单页分析

首先分析原网页代码:

img01

发现我们所需要的信息都在标签中,所以我们需要定位。在标签中提取信息。但是,我们又发现:在真正含有我们所需要的信息的标签前,还有19个不含我们所需信息的标签:

img02

img03

所以,在提取信息的时候需要将前19个标签排除在外,在对含有我们所需内容的标签进行分析:

可以看到:

影片名为

排名为

链接是

名言为标签

评分为

利用这些信息就可以利用函数定位信息,进行提取。

代码如下:

以上完成了对豆瓣电影一页源代码的解析,接下来进行多页的解析,将250部电影的信息全部爬取下来:

多页爬取

在换页的时候,我们发现网页的 URL 发生了改变:

第二页的URL:https://movie.douban.com/top250?start=25&filter=

第三页的URL:https://movie.douban.com/top250?start=50&filter=

我们发现,每跳一页,URL中参数的值就增加25,所以可将作为偏移量,来定位每一页网址。

代码如下:

将爬取到的信息写入txt文件:

定义如下函数,实现将数据写入txt文件的操作

这样就实现了豆瓣电影top250的爬取。

全部代码:

从中的感觉就是,基本的语法、函数的使用是比较简单的;关键之处在于对网页源码的分析,找到合适的提取信息的方式。

输出结果

是不是很有趣,好了今天就到这里吧!See You!

本篇图文由团队 郭维强 同学提供,他的 CSDN Blog 地址为:

经过8年多的发展,LSGO软件技术团队在地理信息系统、数据统计分析、计算机视觉领域积累了丰富的研发经验,也建立了人才培养的完备体系。

欢迎对算法设计与实现感兴趣的同学加入,与我们共同成长进步。

团队寻求论文合作,我们可以辅助对方构建模型,验证算法。

团队寻求项目合作,我们可以辅助对方搭建软件系统。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190113B0YPWV00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券