Python爬取并分析虎嗅网 5 万篇文章

分析内容

分析虎嗅网 5 万篇文章的基本情况,包括收藏数、评论数等

发掘最受欢迎和最不受欢迎的文章及作者

分析文章标题形式(长度、句式)与受欢迎程度之间的关系

展现近些年科技互联网行业的热门词汇

基本环境配置

版本:Python3

系统:Windows

数据库:MongoDB

相关模块:

pyspider

Matplotlib

WordCloud

Jieba

本人对于Python学习创建了一个小小的学习圈子,为各位提供了一个平台,大家一起来讨论学习Python。欢迎各位到来Python学习群:960410445一起讨论视频分享学习。Python是未来的发展方向,正在挑战我们的分析能力及对世界的认知方式,因此,我们与时俱进,迎接变化,并不断的成长,掌握Python核心技术,才是掌握真正的价值所在。

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

猜你喜欢

转载自blog.csdn.net/qq_40925239/article/details/86551748
今日推荐