前言
最近也是在工作之余开发一个Android App,采用当前比较火的框架retrofit+rxjava+rxbus+lamda+greenDao+glide
等。有兴趣的小伙伴可以关注一下我的github开源项目。本文主要介绍的是如何利用python
抓取糗百的热门段子。
开发环境
- Mac Os
- Python 2.7.10
- Node 7.8.0
编译器:
- python–>Pycharm Ec
- node–>Visual Code Studio
以上开发环境以及编译器大家可以自行百度 or google安装,本文就不一一介绍了。
爬虫开发过程
准备
除了以上所说的编译器以及开发环境的配置外,我们还要明确设计爬虫的目标,找到抓取的url以及分析目标url的dom结构。
- 目标:抓取糗百热门段子第一页中的,所有作者,作者的头像,以及对应的段子内容
- url:http://www.qiushibaike.com/
- dom结构:
可以进入糗百首页,然后查看一下网页源码
如上图中所示,可以看到每个完整的段子都是在class=article block untagged mb15
的div
下面。西面接着找一下对应作者的头像以及姓名的节点![](//pic.qiushibaike.com/system/avtnew/2883/28831688/medium/2017051108472215.JPEG)
可以看到作者的名字是和img
的alt
一样的因此只需要找到这个节点就可以得到姓名和头像地址了。最后看下段子的内容,在class= content
的div
下面的span
中。至此所有要的信息的节点都找到了。
爬虫书写过程
框架分为五个个部分:爬虫入口,url管理器,html下载器,html解析器,html输出器
爬虫入口
新建spider_main.py
|
|
url管理器
|
|
html下载器
|
|
html解析器
|
|
html输出器
|
|
最终将爬去的数据以html的形式和Json形式分表保存在当前路径下面。
只用node书写简单的接口
代码如下:
|
|
然后本地浏览器打开:localhost:1377就能看到最终的json了
其它
app 端接口的调用可以看下Github上的开源项目