分析内容
分析虎嗅网 5 万篇文章的基本情况,包括收藏数、评论数等
发掘最受欢迎和最不受欢迎的文章及作者
分析文章标题形式(长度、句式)与受欢迎程度之间的关系
展现近些年科技互联网行业的热门词汇
基本环境配置
版本:Python3
系统:Windows
数据库:MongoDB
相关模块:
pyspider
Matplotlib
WordCloud
Jiebapyspider 爬取并分析虎嗅网 5 万篇文章www.makcyun.top
pyspider 介绍
pyspider 的架构主要分为 Scheduler(调度器)、Fetcher(抓取器)、Processer(处理器)三个部分。Monitor(监控器)对整个爬取过程进行监控,Result Worker(结果处理器)处理最后抓取的结果。
抓取数据
CMD 命令窗口执行:pyspider all 命令,然后浏览器输入:http://localhost:5000/ 就可以启动 pyspider 。
新项目建立好后会自动生成一部分模板代码,我们只需在此基础上进行修改和完善,然后就可以运行爬虫项目了。现在,简单梳理下代码编写步骤。
通过 callback 参数定义一个 index_page() 方法,用来解析 crawl() 方法爬取 URL 成功后返回的 Response 响应。在后面的 index_page() 方法中,可以使用 PyQuery 提取响应中的所需内容。具体提取方法如下:
成功得到所需数据,然后就可以保存了,可以选择输出为 CSV、MySQL、MongoDB 等方式,这里我们选择保存到 MongoDB 中。
数据清洗处理
首先,我们需要从 MongoDB 中读取数据,并转换为 DataFrame。
不同时期文章发布的数量变化
具体代码实现如下:
最高产作者 TOP20
平均文章收藏量最多作者 TOP 10