代码很简单,主要利用了requests进行网络访问,beautifulSoup进行页面文本分析,re进行正则表达式抽取文字,前面两个需要pip install name去安装,后者是内部对象所以不用安装。代码如下,只有区区二十七行:

from bs4 import BeautifulSoup
import requests
import re

user_agent='Mozilla/4.0 (compatible;MEIE 5.5;windows NT)'
headers={'User-Agent':user_agent}

dic={}; #定义个字典对象,存月份和个数
for i in range(1,90):
    html=requests.get('http://www.cnblogs.com/xiandedanteng/p/?page='+str(i),headers=headers)
    soup= BeautifulSoup(html.text,'html.parser',from_encoding='utf-8');

    for descDiv in soup.find_all(class_="postDesc2"):
         rawInfo=descDiv.text #得到class="postDesc2"的div的内容
         yearMonth=re.search(r'\d{4}-\d{2}',rawInfo).group() #用正则表达式去匹配年月并取其值

         # 将年月存入字典,如果存在就在原基础上加一
         if yearMonth in dic:
               dic[yearMonth]=dic[yearMonth]+1
         else:
               dic[yearMonth]=1

list=sorted(dic.items(),key=lambda x:x[1]) #将排序后的字典转化为数组
list.reverse()
for item in list:
    print(item)

而得到的结果如下:

('2017-09', 80)
('2019-10', 66)
('2018-04', 56)
('2018-05', 45)
('2013-09', 43)
('2019-09', 42)
('2017-08', 38)
('2019-03', 37)
('2013-08', 32)
('2017-11', 32)
('2014-07', 26)
('2014-12', 22)
('2017-06', 21)
('2017-12', 21)
('2017-01', 20)
('2018-03', 19)
('2019-08', 18)
('2016-07', 17)
('2013-11', 15)
('2014-08', 15)
('2016-03', 15)
('2013-10', 14)
('2014-04', 14)
('2014-05', 14)
('2015-01', 14)
('2019-11', 13)
('2014-11', 12)
('2016-08', 12)
('2015-07', 10)
('2016-02', 9)
('2017-07', 9)
('2014-01', 8)
('2014-10', 7)
('2015-08', 7)
('2018-01', 7)
('2015-04', 6)
('2014-02', 5)
('2015-06', 5)
('2017-10', 5)
('2013-12', 4)
('2015-02', 4)
('2015-05', 4)
('2014-03', 3)
('2017-02', 3)
('2014-09', 2)
('2015-12', 2)
('2017-03', 2)
('2018-06', 2)
('2018-07', 2)
('2019-05', 2)
('2014-06', 1)
('2015-11', 1)
('2016-05', 1)
('2016-06', 1)
('2016-10', 1)
('2017-04', 1)
('2017-05', 1)
('2019-04', 1)
('2019-07', 1)

偶尔玩玩Python还挺有意思,这门技能可不能忘了。

--END-- 2019年11月3日15:26:38

【Python】对我自己的博客进行统计,看看哪年哪月发帖量最大的更多相关文章

  1. 这几天有django和python做了一个多用户博客系统(可选择模板)

    这几天有django和python做了一个多用户博客系统(可选择模板) 没完成,先分享下 断断续续2周时间吧,用django做了一个多用户博客系统,现在还没有做完,做分享下,以后等完善了再慢慢说 做的 ...

  2. python环境变量配置 - CSDN博客

    一.下载: 1.官网下载python3.0系列(https://www.python.org/) 2.下载后图标为: 二.安装: Window下: 1.安装路径: 默认安装路径:C:\python35 ...

  3. Python爬虫简单实现CSDN博客文章标题列表

    Python爬虫简单实现CSDN博客文章标题列表 操作步骤: 分析接口,怎么获取数据? 模拟接口,尝试提取数据 封装接口函数,实现函数调用. 1.分析接口 打开Chrome浏览器,开启开发者工具(F1 ...

  4. 【转载】国内网站博客数据统计选免费Google Analytics还是百度统计

    [转载]国内网站博客数据统计选免费Google Analytics还是百度统计 Google Analytics谷歌统计是我用的第一个网站统计工具,当然现在也一直在用.Google Analytics ...

  5. python网络爬虫 新浪博客篇

    上次写了一个爬世纪佳缘的爬虫之后,今天再接再厉又写了一个新浪博客的爬虫.写完之后,我想了一会儿,要不要在博客园里面写个帖子记录一下,因为我觉得这份代码的含金量确实太低,有点炒冷饭的嫌疑,就是把上次的代 ...

  6. 用Python和Django实现多用户博客系统(二)——UUBlog

    这次又更新了一大部分功能,这次以app的形式来开发. 增加博客分类功能:博客关注.推荐功能(ajax实现) 增加二级频道功能 更多功能看截图及源码,现在还不完善,大家先将就着看.如果大家有哪些功能觉的 ...

  7. 在 Windows Azure 网站上使用 Django、Python 和 MySQL:创建博客应用程序

    编辑人员注释:本文章由 Windows Azure 网站团队的项目经理 Sunitha Muthukrishna 撰写. 根据您编写的应用程序,Windows Azure 网站上的基本Python 堆 ...

  8. Python开发【项目】:博客后台

    概述 通过自己写的博客后台代码.思路,来与武sir的代码进行一个差异化的比较,记录之间的差距,改善以后写代码的思路 博客后台这个项目,对之前Django学习的各个知识点都有涉及到,非常重要 用户登录验 ...

  9. Python网络数据采集(1):博客访问量统计

    前言 Python中能够爬虫的包还有很多,但requests号称是“让HTTP服务人类”...口气不小,但的确也很好用. 本文是博客里爬虫的第一篇,实现一个很简单的功能:获取自己博客主页里的访问量. ...

  10. python关于Django搭建简单博客项目(详解一)

    上一篇我们说了如何搭建简易博客网站,下面我们来进行详细解答.本文没有特定顺序,请结合上一篇和源代码参照学习. 相关源代码和解析请参看:https://github.com/Cheng0829/mysi ...

随机推荐

  1. K2 工作流_【解决方案】车企CAL应用解决方案,攻克新车质检环节管理难题_全球领先的工作流引擎

    ​ 截止去年,中国已连续第九年成为全球最大汽车市场,与此同时关于乘用车新车售前检查(PDI)相关的诉讼纠纷案件也逐年呈上升趋势(PDI全称为Pre-Delivery Inspection,是经销商对乘 ...

  2. 【Hibernate】事务处理

    一.概述 一.概述 事务 事务就是逻辑上的一组操作,要么全都成功,要么全都失败!!! 事务特性 原子性:事务一组操作不可分割. 一致性:事务的执行前后,数据完整性要保持一致. 隔离性:一个事务在执行的 ...

  3. 【Hibernate】一级缓存

    一.概述 二.证明Hibernate的一级缓存的存在 三.一级缓存中快照区 四.管理一级缓存 五.Hibernate一级缓存的刷出时机 六.操作持久化对象的方法 一.概述 什么是缓存: 缓存将数据库/ ...

  4. 【Hibernate】持久化对象状态及以及缓存

    一.持久化类状态 1.1 三种持久化对象的状态 1.2 区分三种状态 1.3 三种状态对象转换 1.瞬时态 2.持久态 3.脱管态 4.持久态对象有自动更新数据库的能力 一.持久化类状态 1.1 三种 ...

  5. C 全局变量 本地变量

  6. 挖矿病毒watchbog处理过程

    1 挖矿病毒watchbog处理过程 简要说明 这段时间公司的生产服务器中了病毒watchbog,cpu动不动就是100%,查看cpu使用情况,发现很大一部分都是us,而且占100%左右的都是进程wa ...

  7. jade反编译,把html编译成jade

    通过上面的学习,了解了一个jade模板怎么编译成一个html页面,现在介绍一个工具,怎么把html页面编译成一个jade模板 命令行 npm install html2jade -g 安装到全局 第一 ...

  8. Jupyter的学习

    一 .Jupyter中的魔术命令 %load test.py  :”可以将test.py 中的文件加载到jupyter框中 %matplotlib inline :可以将Matplotlib 的结果嵌 ...

  9. Cairo

    Cairo 英[ˈkaɪrəʊ] 美[ˈkaɪroʊ] n. 开罗(埃及首都); [例句]From Cairo came expressions of regret at the attac

  10. idea在springboot项目中显示Run Dashboard

    1.Run->Edit Configurations 2.在Templates[Defaults]-> Configurations available in Run Dashboard ...