×
天晴创艺网站建设公司。主要为北京天津全国各地提供网站建设与网页设计制作服务,欢迎大家咨询。您的IP地址是:35.175.120.174。今天是:2019年11月23日,星期六,农历己亥年(猪),十月廿七,现在是:10:59:22,早上好,一天之际在于晨,又是美好的一天!

python只需7行代码就能爬取豆瓣电影的数据

作者:天晴创艺发布时间:2019-3-28 15:07:59浏览次数:10205文章出处:高端网站建设

      搜索引擎和(大多数)新闻类APP都不自己生产内容(虽然有些平台孵化了自己的内容,但也只占整个平台内容的很少的一部分,更重要的是,成本非常高)。

      那么,他们的大量的内容从哪里来?

      “我们不生产内容,只是内容的搬运工”网站外包,将互联网上的内容“搬运”到自己的服务器上,这就是爬虫。

      首先,我们需要了解一下互联网的结构:

      互联网上的内容数以亿计,虽然很复杂,但说白了就是一张大网,网上的每个节点就是一个网页,连接网页的超链接(Hyperlinks)相当于线,线把所有的节点连接在一起,形成了一个复杂的网。

      通过点击超链接的文字或者图片,就可以跳转到对应的网页。爬虫可以自动访问到每一个网页,并把网页的内容保存下来。

      世界上第一个网络爬虫由麻省理工学院的学生马修·格雷(Matthew Gray)在1993年写成,之后的爬虫尽管越来越复杂。

      比如:可以实现更快的访问速度、访问更多的网页、更好的将网站内容解析出来。但爬虫的基本原理是一样的,都主要包括三个部分:访问网页链接,下载网页内容,解析网页内容。

      爬虫的工作过程与我们查找网页的过程是一样的。

      比如,我们想要查一下豆瓣上最新的电影:首先,在浏览器地址栏输入网址链接 https://movie.douban.com/  ;之后,浏览器会跳转到豆瓣电影;最后,我们就可以找到当前热映的电影。

 7行代码就能爬取豆瓣电影的数据

7行代码就能爬取豆瓣电影的数据

      同样的,一个最简单的爬虫三步就可以爬取一个网页:

      访问这个网页;

      把网页内容下载下来;

      对下载的内容进行解析。

      最简单的爬虫三步就可以爬取一个网页,那么要写多少行代码呢?

      我们写一个爬虫,爬取豆瓣的“一周口碑榜”,只要7行代码!

      代码如下:

 7行代码就能爬取豆瓣电影的数据

7行代码就能爬取豆瓣电影的数据

      Python环境中运行这几行代码,就可以获取“一周口碑榜”了,结果如下:

       [‘迦百农’, ‘绿皮书’, ‘驯龙高手3, ‘速成家庭’, ‘阿丽塔:战斗天使’, ‘肤色’, ‘死亡天使’, ‘黎明墙’, ‘小小巨人’, ‘出·路’]

      其中最关键的是解析网页内容,主要是(//td[@class=title]//a/text())这行代码,大多数人可能对比较困惑。

      这涉及到HTML网页的结构:

      可以把网页理解成一个文件夹,打开一个文件夹,会发现子文件夹,子文件夹或许还有文件夹;通过打开一个个文件夹,最终找到需要的数据。

       //td :这个相当于大目录;

      [@class=title]:这个相当于小目录;

       //a :这个相当于最小的目录;

      /text():这个是提取其中的文字内容。

      至于是怎么写出来这行代码的,可以通过在网页空白处点击右键,查看源代码,就可以找到对应的tdclass=title”、a等标识符。

       大多数程序员写爬虫选择python的理由很简单:

      首先,python有很多的库,可以直接调用,比如:上面的代码就引入了requestslxml库,分别实现访问网页、对网页结构解析。有开源的库九帆网络,就直接调用,避免重复造轮子。

      其次,python写起来很方便,配置也简单,短短几行的代码,就可以直接运行了,如果使用C或者Java,可能配置环境就要老半天。

(郑重声明:本文版权归原作者linghu所有,转载文章仅为传播更多信息之目的,如有侵权,请联系我们删除;如作者信息标记有误,请联系我们修改。)

科技行业网站制作

文章来源:高端网站建设

文章标题:python只需7行代码就能爬取豆瓣电影的数据

文本地址:https://www.bjtqcy.com/info_1262.html

收藏本页】【打印】【关闭

本文章Word文档下载:word文档下载 python只需7行代码就能爬取豆瓣电影的数据

用户评论

客户评价

专业的网站建设、响应式、手机站微信公众号开发

© 2010-2019 bjtqcy.com 版权所有 京ICP备16050845号

关注公众号 关注公众号

进入手机版 进入手机版