记一次企业级爬虫系统升级改造(四):爬取微信公众号文章(通过搜狗与新榜等第三方平台)

首先表示抱歉,年底大家都懂的,又涉及SupportYun系统V1.0上线。故而第四篇文章来的有点晚了些~~~对关注的朋友说声sorry!

SupportYun系统当前一览:

  首先说一下,文章的进度一直是延后于系统开发进度的。

  当前系统V1.0 已经正式上线服役了,这就给大家欣赏几个主要界面~~

  

  哈哈~这是系统主页,极简风格。主体框架使用的是 B-JUI ,偶然间看到的一个开源框架,相信它的作者会把它做得越来越好!

  

  这是数据列表的功能页面,大家对这个table应该非常熟悉哈,我使用的是easyUI的datagrid,没办法谁叫他简单便捷呢~~

  再给大家秀一秀V1.1版本正在开发的一个界面:【搜一搜】

  

  嘿嘿~有木有一种百度搜索结果的既视感...没办法,谁叫俺是个程序员呢,也设计不出来啥好样式,只有照着百度自己拼凑了一个!  

 技术只是解决问题的选择,而不是解决问题的根本。

 

爬取微信公众号方案:

  不知道为什么,这个系统做着做着我身上就又多了一个使命:爬取微信文章。

  谁叫咱是拿钱干活,而不是拿钱吩咐人干活的呢!哎~还非得作为紧急任务添加到了即将上线的V1.0版本,哭>>>>>

  “工欲善其事,必先利其器!”

  “说人话!”

  “我先百度一下怎么做~~~”

  所以啊,程序员最离不开的还是万能的搜索引擎。借助几个小时在搜索引擎看的相关帖子、博客、文章等等内容,我也大致总结了一下网友们提到的可以实现的方案:

    1.微信API获取   ——想想都是醉了,肿么可能...

    2.抓取微信历史文章页面   ——据说每个微信公众号都有一个固定地址的历史文章页面,嗯,我看行...

    3.通过搜狗搜索微信,抓取结果列表   ——啊哦,这不就成了抓网页了么,我的系统有现成的方案啊...

    4.使用类似新榜这样的内容网站平台   ——本质和搜狗应该想差不大...

    5.能搜到很多各式各样的抓取软件,看介绍是有类似功能的,不过不是要钱就是要各种币,故我也没做尝试...

  嗯,刀磨锋利了,该选几棵树试试效果了。

  以博主这几个小时摄取的知识来看,第3/4两条,通过搜狗、新榜来爬取它们的网页比较靠谱,也和SupportYun当前系统相符(本来咱就是一个单纯的网站爬取系统)。至于第二条,爬历史文章,这个由于BOSS的关注点更在于能抓取到最新的文章,而不是大量的历史文章,故而放弃尝试。

我到底该学什么?------别问,学就对了; 

我到底该怎么做?------别问,做就对了。

 

初尝搜狗搜索,抓取微信公众号文章:

  打开搜狗搜索,我们可以看到,搜索微信文章分两种模式:搜文章、搜公众号

  先来看搜文章:

  

  根据搜索结果,我们发现,这相当于内容搜索,结果不局限于任何公众号。由于博主的BOSS要求的是爬取指定的一堆微信公众号的最新文章...所以,放弃搜文章。不过大家要是有其他需求,还是可以通过这个方案来构建url抓取数据的。

  我们再来看搜公众号是个什么鬼:

  

  OK,我们点击某一个公众号进去看看。额~~~居然让输入验证码。好万恶!

  进去后我们发现是直接到了微信的列表页,观察url,有过时的风险。以小道消息的url为例:

  http://mp.weixin.qq.com/profile?src=3&timestamp=1484034436&ver=1&signature=5ANAj3eXwUD5KImAqpqhfnnzIx49V9*lzIc-MKxq21VwMoq51PCrd2NxcOqQPbt35Zg5SrRXDB418Rj48HCV5Q==

  在url中看见timestamp=1484034436这种带有时间戳的参数,一般都会存在过期问题,博主多次尝试对该url的时间戳进行替换,发现signature参数的值应该是与时间戳有所关联,故而很难自己重新构建url。

  假如我们先忽略掉验证码与列表url过期问题,毕竟我们还有搜索文章那一条路,是不存在这两个问题的。那么我们看到的就是一个标准的列表页面:

  

  抓取这种页面是SupportYun系统的强项,具体代码大家可以看第二篇文章:

  记一次企业级爬虫系统升级改造(二):基于AngleSharp实现的抓取服务

    注:此处详情页的url也是会过时的,经过博主试验,我们只需要在url后面统

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值