解读:爬虫第二更——采集微信公众号文章

优采云 发布时间: 2020-08-30 07:24

  爬虫第二更——采集微信公众号文章

  闲谈

  七夕快乐,老铁们,没有对象的python上面可没有new,一切皆对象。今天和几个小伙伴聊了一下学习爬虫经验,发现小伙伴们所碰到的问题和自己当年自学时碰到的问题惊人的相像。在此,我和你们分享一个剖析简单爬虫项目的经验(对大部分的爬虫项目都适用),希望对你们有帮助。

  

  正文

  1.分析

  对于开发一个爬虫项目来说,最重要的部份是对项目进行剖析。只要对项目剖析的透彻,接下来的写代码过程都会事半功倍。说到对项目的剖析,那就不得不说剖析工具,在刚开始接触爬虫时,我们就会用到firebox或则chrome来拦截网站的恳求,然后对其剖析、解析。

  在这里我给你们推荐一款非常好用的抓包工具,用来拦截网站的恳求,以便于你们对网站请求进行剖析。这个工具的名子称作fiddler。

  

  fiddler的下载和安装都很简单,百度一下就有下载链接,安装也是下一步下一步跟随向导走完就可以了。

  下载安装好后我们须要对fiddler进行设置。设置链接如下:

  设置完成后,我们开始步入我们明天的题外话——采集微信公众号文章,这里我采集的对象是我小伙伴的公众号的文章,在此顺便给他打个广告:

  

  接下来我们就用fiddler来拦截手机上微信公众号的恳求,将手机联接到与笔记本同一网关的wifi。这时你可以测试一下,在fiddler没有主动拦截的情况下你用手机上的浏览器打开一个网站,你会发觉fiddler上会出现若干看不懂的恳求记录,这就说明你的fiddler拦截手机上的恳求成功。

  

  然后,你用手机步入到你想采集的微信公众号的界面,点击最下方的“全部消息”

  

  这时你会发觉fiddler上的恳求象脱缰的野马似的顿时就满屏了,接下来你须要做的是找出其中你须要的恳求,也就是返回公众号文章的异步api。

  如何找寻这个api啦,fiddler软件是有字符查询功能的,你可以按Ctrl+F 输入你想要查询的字符,这里我们就输入一个手机上显示的一个字符“基本操作”,发现有三个恳求中收录“基本操作”,这种情况我们须要一个一个的筛选找到我们想要的api。但按照项目经验,我们所需的api应当就是第二个恳求,因为它的数据格式是json。数据格式是json的恳求极有可能是目标api。

  

  

  点击目标恳求后查看数据内容(查看点击次序如图),在恳求返回的内容中找到了我们查找的内容,在将其他内容与公众号上的内容想比较,可以确认该恳求就是我们所要找寻的api。

  

  接下,我们查看api的恳求头参数(也就是headers),多滑动手机,让fiddler拦截到第二页,第三页的内容,确定api访问的类型和恳求参数。此处的api是get恳求,和翻页相关的恳求参数是offset。

  

  最后依照找到的api和恳求规律编辑爬虫程序。为了编撰程序是代码足够好看,我们会删掉一个无用的恳求url、请求头或cookies中的参数,这须要你们自己检查后删掉。

  代码:

  链接:

  密码:oz19

  

  总结:

  总体来说,这个采集公众号的爬虫项目不难,主要是剖析部份,只要剖析的透彻,代码能够太迅速的完成。通过这个项目,相信你们也认识到fiddler工具的重要性了,其实fiddler还有其他太强悍的功能,比如模拟浏览器发送恳求(request)。

  最后,如果你们喜欢我的文章,那就关注我吧,关注过的,那就给个赞吧。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线