Python 刷高博客阅读量

来源:互联网 发布:linux windows samba 编辑:程序博客网 时间:2024/04/25 17:28
【事情起因】
    前段时间我开始写博客,后来发现博客文章的阅读量实际上是文章对应网页的被打开次数。于是我有了个想法:可不可以写一个程序,让她不断访问某篇文章的页面,以此刷高博客的阅读量呢?要回答这个问题很简单,试一试不就知道了!
    正好这段时间看了 cURL 和 Python,很自然地想把她们结合起来。
    按照这个思路,我写了下面这个脚本:
#!/usr/bin/env python# -*- coding:utf-8 -*-import urllib    # Python中的cURL库import urllib2    # Python中的cURL库import time    # 时间函数库,包含休眠函数sleep()url = 'http://blog.csdn.net/csdnzouqi/article/details/51491786'    # 希望刷阅读量的文章的URLuser_agent = 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)'    # 伪装成Chrome浏览器refererData = 'https://www.baidu.com/s?ie=utf-8&f=8&rsv_bp=1&tn=baidu&wd=csdn%20%E6%80%9D%E6%83%B3%E7%9A%84%E9%AB%98%E5%BA%A6%20csdnzouqi&oq=csdn%20%E6%80%9D%E6%83%B3%E7%9A%84%E9%AB%98%E5%BA%A6&rsv_pq=fe7241c2000121eb&rsv_t=0dfaTIzsy%2BB%2Bh4tkKd6GtRbwj3Cp5KVva8QYLdRbzIz1CCeC1tOLcNDWcO8&rqlang=cn&rsv_enter=1&rsv_sug3=11&rsv_sug2=0&inputT=3473&rsv_sug4=3753'    # 伪装成是从baidu.com搜索到的文章data = ''    # 将GET方法中待发送的数据设置为空headers = {'User-Agent' : user_agent, 'Referer' : refererData}    # 构造GET方法中的Headercount = 0    # 初始化计数器request = urllib2.Request(url, data, headers)    # 组装GET方法的请求while 1:    # 一旦开刷就停不下来    rec = urllib2.urlopen(request)    # 发送GET请求,获取博客文章页面资源    page = rec.read()    # 读取页面内容到内存中的变量,这句代码可以不要    count += 1    # 计数器加1    print count    # 打印当前循环次数    if count % 6:    # 每6次访问为1个循环,其中5次访问等待时间为31秒,另1次为61秒        time.sleep(31)    # 为每次页面访问设置等待时间是必须的,过于频繁的访问会让服务器发现刷阅读量的猥琐行为并停止累计阅读次数    else:        time.sleep(61)print page    # 打印页面信息,这句代码永远不会执行

    将以上代码保存为脚本 spider.py,通过 Python 解释器运行便实现了给博客指定文章刷阅读量的效果。



【注意事项】

    需要注意的是 if count % 6 这个条件语句可以替换为其它逻辑的代码,比如在 15~30秒 这个范围内给每次访问设定随机的睡眠时间,目的是避免过于明显的访问规律

    过于频繁的访问会被服务器识别到,并使其停止对文章阅读量的累加。所以每次访问的睡眠时间虽可以酌情设置,但不能太短。

    另外,有的网站对于访问者的 IP 也有检测,对于这种情况我们可以构建一个代理服务器 IP 池,每次访问时都重新从 IP池 中选取一个新的代理服务器


【实战效果】

    实战效果还是不错的,因为我在脚本中为每次访问设置了较长的睡眠时间,所以服务器并没有发现我这种实验性的猥琐行为,目标博文阅读量成功地被我从 51次 刷到了 1000+。


1 0
原创粉丝点击