Python网络爬虫(3)- 统计个人优快云的文章信息

本文介绍了一种使用Python爬虫记录个人在优快云上的文章浏览量等统计数据的方法,以解决无法方便查看历史记录的问题。代码已更新以适配优快云的界面变动,数据保存在record.txt文件中。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

# 请尊重原创,转载请注明出处:https://blog.youkuaiyun.com/qq_34175893/article/details/79755967


最近因为经常上优快云上看看自己的文章浏览量什么的,但是因为QQ的登录实在是让人无话可说,并且没有记录,每天看到的都是当前的,看不到进步的感觉,所以就自己写了个爬虫程序,用来查看记录自己的个人统计数据,先贴上结果


上面的框出来的就是要记录的数据,所有的数据记录在My 优快云 Record/record.txt中,方便日后查看

文件记录内容如下


下面贴上代码

# coding:utf-8
# 写于 2018-3-30
# python版本:2.7
# 功能: 统计个人的优快云的文章的阅读量信息
# 使用方法: 直接将开始的URL变量修改为自己的个人文章列表的主页,运行即可
import urllib
import re
import time
URL="https://blog.youkuaiyun.com/qq_34175893?viewmode=list"
html_text=urllib.urlopen(URL).read()
p=re.compile('\s+')
html_text=re.sub(p,'',html_text)
print  html_text
results=re.findall(r"<spanclass=\"link_title\"><ahref.*?>(.*?)</a>.*?"
                   r"\"link_postdate\">(.*?)</span>.*?"
                   r"阅读</a>\((.*?)\).*?"
                   r"评论</a>\((.*?)\)",html_text,re.S)

for result in results:
    print "%-36s\t\t%s \t  阅读次数 %s 评论次数 %s"%(result[0][0:29],result[1],result[2],result[3])

results=re.findall(r"<divclass=\"gradeAndbadgegradewidths\"title=\"(.*?)\"",html_text,re.S)
now_time = time.asctime(time.localtime(time.time()))
record_info="日期: %s 访问量:%s   积分: %s  排名:%s\n"%(now_time,results[0],results[1],results[2])
print "\n%s"%record_info
file=open("My 优快云 Record/record.txt","a")
if(file):
    print '打开%s成功'%file.name
    file.write(record_info) #write方法没有返回值,所以也无须进行判断,直接打印输入成功了
    print '记录成功'
2018-4-30更新


今天突然想起来好久没有统计记录了,运行了一下发现优快云居然又又又更新了,而且对源代码还进行了比较大的改动,下面附上针对新版本的代码

# coding:utf-8
# 写于 2018-3-30
# python版本:2.7
# 功能: 统计个人的优快云的文章的阅读量信息
# 使用方法: 直接将开始的URL变量修改为自己的个人文章列表的主页,运行即可
import urllib
import re
import time
URL="https://blog.youkuaiyun.com/qq_34175893?viewmode=list"
html_text=urllib.urlopen(URL).read()

# 去掉html文档中的空格换行等字符
p=re.compile('\s+')
html_text=re.sub(p,'',html_text)

#print  html_text
results=re.findall(r"</span>(.*?)</a></h4>.*?"
                   r"<spanclass=\"date\">(.*?)</span>.*?"
                   r"阅读数:(.*?)</span>.*?"
                   r"评论数:(.*?)</span>",html_text,re.S)

for result in results:
    print "%-36s\t\t\t\t\t\t%s \t  阅读次数 %s 评论次数 %s"%(result[0],result[1],result[2],result[3])

fangwen_jifen=re.findall(r"<ddtitle=\"(.*?)\"",html_text,re.S)
paiming=re.findall(r"<dltitle=\"(.*?)\"",html_text,re.S)
#now_time = time.asctime(time.localtime(time.time()))
now_time = time.ctime() #获取时间的方法
record_info="日期: %s 访问量:%s   积分: %s 排名:%s\n"%(now_time,fangwen_jifen[0],fangwen_jifen[1],paiming[0])
print "\n%s"%record_info
file=open("My 优快云 Record/record.txt","a")
if(file):
    print '打开%s成功'%file.name
    file.write(record_info) #write方法没有返回值,所以也无须进行判断,直接打印输入成功了
    print '记录成功'

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值