首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

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

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190119A0JGV000?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券