公众号+增量爬虫开发分享

第一节

开发这个公众号,主要是来自微信公众后台朋友的提问,有个朋友的问题真的很有意思,他问爬虫能干什么,能不能举个例子。我现在想说朋友,我已经回答你了,爬虫主要用来作为数据源,提供大量的数据,从而完成更加实用的功能。我这个公众号的电影数据源就是从互联网上爬取下来的,自己编写的爬虫,每日定时更新数据,一些较新的电影资源都会看到(侵权的话通知我删),主要是玩玩,给大家提供一些案例,喜欢的话就关注一下,当然你也可以分享给你的朋友们

第二节

爬取电影天堂

公众号的开发,我就不讲了,上一篇文章已经讲了很多SDK,看着SDK开发文档,很容易就可以做出来,没什么技术含量。现在我们主要说一下数据源爬虫的开发,目标是电影天堂,使用的是scrapy框架编写的。

如果大家之前看过我的书,很容易理解接下来的内容。

这次比较特别的地方是咱们要写一个增量的爬虫:重复的标准不再是url,而是url+更新时间,因为一部电视剧有很多集,但是页面链接还是一个,每次更新是在原来页面上更新的,所以不能依靠url来去重。

然后在启动爬虫后,从电影列表中抓取电影url与更新时间,如果url+更新时间不在集合中,则进行电影详情页的爬取。

需要说明地方也就这一点,scrapy爬虫的编写,我在我的书中已经写的比较详细了,这里不再赘述,完整代码放到了github :https://github.com/qiyeboy/LuLunZi。

下面我贴一下主要的代码截图,方便大家在微信里看。

数据的存储使用的是mongodb

网页解析,清洗部分的代码有点长,这就不截图了,大家可以去github中下载。

最后来个运行效果图,有图有真相。

数据存储截图:

本文来自企鹅号 - 七夜安全博客媒体

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏java架构学习交流

Java web轻量级开发面试教程读书笔记:数据库方面,如何准备面试

如果在面试或与资深人事交流的过程中,你能有效合理地展示出本章所给出的一些知识点,那么对你的评价就会是“对数据库有深入了解”,甚至能加上“有设计数据表的经验”,即...

2208
来自专栏Java技术栈

Spring面试题(第一期)

Spring作为现在最流行的java web开发框架,Spring的应用及其原理的深入了解是每个Java开发程序员必经之路,下面10道面试题是Java开发程序员...

3478
来自专栏Ryan Miao

springmvc原理

今天面试碰到一个特别恶心的公司面试官。是一个金融公司,过去后告诉我2点上班,带我去见经理。经理找人面试,看起来没有hr,经理直接看简历招人。经理上来就问我是xx...

3316
来自专栏跟着阿笨一起玩NET

C#跟着阿笨玩一起玩异步Task实战(一)

822
来自专栏写写代码吃吃瓜

Android开发中运用okhttp发送网络请求

1464
来自专栏老九学堂

【休息室】一张图看懂Java的垃圾回收机制

? 新手程序员第一次做项目的过程…… ? 代码写好了,咱们来测试吧…… ? 一张图看懂 Java 多线程阻塞机制…… ? Bug多了,总有一个会把你坑了…… ...

3367
来自专栏七夜安全博客

公众号+增量爬虫开发分享

1012
来自专栏JAVA高级架构开发

初级Java程序员需要掌握哪些主流技术才能拿20K?

说到这里,也给大家推荐一个架构交流学习群:614478470,里面会分享一些资深架构师录制的视频录像:有Spring,MyBatis,Netty源码分析,高并发...

740
来自专栏Java Edge

JVM性能调优实战(〇) - 简介收获计划安排

712
来自专栏蓝天

多线程中使用curl致coredump问题

coredump时的调用栈: #0  0x081eff2c in addbyter () #1  0x081f05b8 in dprintf_format...

703

扫码关注云+社区