最近室友突然迷上了小说,由于有些小说阅读器阅读需要会员,室友大多都是在手机浏览器上阅读。而学校宿舍晚上11点断网,于是每到断网之时,都能听到室友要用无上心法干翻校长的怒吼。
折腾python也有一个多月了,看到室友怨愤的神情,我知道装逼的时候到了。
言归正传,相信很多用过python的大神都用它写过爬虫。对于 requests 和 BeautifulSoup 模块自然了然于胸,这里也不会赘述他们的用法。本文我给大家介绍一些好用且神奇的库。
进群:125240963 即可获取数十套PDF哦!需要源码也请私信小编!
抓取实践:
思路很简单,但是我们也得经过实践来证明思路是否可行。我们先上代码来感受下 selenuim 的神奇,我们用 Chrome 来查看效果,正式写代码的时候换回 PhantomJS。因为我们说过 PhantomJS 是无界面的浏览器,不方便查看代码效果。
以上程序成功运行,我们的浏览器已经自动切换到了搜索窗口,我们只要获得新窗口的源码,就可以获得搜索结果的详细信息了。到这里是不是觉得这个库很方便。
代码运行成功,我么得到了一个小说地址。我们访问它发现是小说的目录,这样就很好办了,只要利用 requests 和 Beautifulsoup 模块就可以获取到每一章节的 url 集合了。
获取小说内容也很简单,BeautifulSoup 解析出网页,如果直接用 BeautifulSoup 通过提取网页 html 标签来获取小说的话,会出现排版问题,不够美观。这里我们仍然用正则匹配小说内容。
代码地址:
懒惰的小伙伴可以直接看这里复制源码。
代码已上传 github。地址:Blackyukun/dingdian
程序使用效果:
欢迎大家前往 fork 和 start 。未来会用 flask 部署到可视页面。
牢骚:
来知乎很久了,没提过几个问题,也没回答过几个问题。最近突然心血来潮,想和大家分享一些学习经历,和大家交流交流。代码方面讲解的不是很详细(显得啰嗦),也没这个必要。
如代码有问题,也欢迎大家前来指正^_^。
网友评论