17年春节各语言程序员努力指数
新年第一天上班,学习了python,自定一个题目查看过年期间,各种语言程序员发表博客情况,看下程序员的努力情况,具体办法是抓取cnblogs中各个博客发表日期,查看放假期间方标数量对比下,纯属娱乐,如有不适,敬请谅解,呵呵!
import re import urllib2 import datetime def getHtml(url): res = urllib2.urlopen(url) html = res.read() return html def getcount(html): t_str = '2017-02-03 00:00:01' restr = r'发布于\s\d{4}-\d{2}-\d{2}\s\d{2}:\d{2}' dd = re.compile(restr) dl = re.findall(dd,html) now = datetime.datetime.strptime(t_str,'%Y-%m-%d %H:%M:%S') i = 0 for date in dl: dreg = r'\d{4}-\d{2}-\d{2}' ddreg = re.compile(dreg) dateres = re.findall(ddreg,date) dte = dateres[0] a=datetime.datetime.strptime(dte,"%Y-%m-%d") delta = now - a if delta.days < 10 and delta.days >0:
i = i+1 return i def getAllcount(lan): url = "http://www.cnblogs.com/cate/" + lan + "/" count = 0 a = True page = 1 while a: uurl = url + str(page) cnt =getcount(getHtml(uurl)) count = count + cnt if cnt == 20: page = page + 1 else: a = False return count lanlist = ["108698","cpp","java","php","delphi","python","ruby","c","erlang","go","swift","scala","r","verilog","otherlang""108703"]
for l in lanlist: print getAllcount(l)
这是全部代码,结果
.net:17
cpp:19
java:33
php:3
delphi:0
python:10
ruby:0
c:8
erlang:1
go:0
swift:0
scala:2
r:0
verilog:0
web前端:19
otherlang:1
做个图,今年争取发表个论文,练练制图:
不考虑总量的情况下,还是java程序员工作努力啊,web前端和c++次之,python也不错。。。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· NetPad:一个.NET开源、跨平台的C#编辑器
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验