zoukankan      html  css  js  c++  java
  • python实践—网络刷博器

    为什么要写这篇博客,是因为最近刚开始学习python没多久,非常巧的是有个朋友问我,说你既然搞IT,能不能帮我刷访问量,我当时犹豫了一下,说试试,然后就回去捣鼓了一下,但是在这里笔者想说一句,并非所有的博客都能刷,最后也没帮我朋友刷成功,因为有些博客的访问量是要根据IP地址来规定的,所以需要频繁地更换网络环境,其实就是出口路由的ip地址要变化才有用,但是有些博客是可以的,比如搜狐的博客,本篇博文就以搜狐的博客为例。

    首先声明一点,没有想恶意攻击谁,也没有想弄虚作假,仅仅想展示python的强大,我们是奉公守法的网络良民。

    第一步,打开某篇搜狐的博文,观察阅读量

    现在阅读量为1033,然后我们在新建网页中打开

    发现阅读量变为1034了,这就说明该博客只要打开一次,阅读量就会加1

    第二步,设计python的代码的思路

    其实代码只要能完成以下两个工作就可以

    (1)在新建网页中打开不停地打开该博文,直到达到一定次数就不再打开,假设打开次数为n

    (2)第一步执行完毕以后,就立即关闭浏览器,然后再打开浏览器,再重复第一步,如此循环多次,假设循环次数m

    那么该博客阅读量就增加了m*n次,在这里笔者想提醒大家一句,为什么要在打开一定次数的网页的时候一定要关闭浏览器,我们都知道,当我们不断打开网页,CPU内存会被不断占用,如果不关闭,会造成内存被耗尽,导致死机,所以在打开一定的网页次数就要关闭浏览器!!!在这里我们使用dos环境中taskkill命令来结束进程。

    在cmd中查看taskkill命令详情

    C:Users羊羊>taskkill/?

    看到如下结果

    C:Users羊羊>taskkill/?
    
    TASKKILL [/S system [/U username [/P [password]]]]
             { [/FI filter] [/PID processid | /IM imagename] } [/T] [/F]
    
    描述:
        使用该工具按照进程 ID (PID) 或映像名称终止任务。
    
    参数列表:
        /S    system           指定要连接的远程系统。
    
        /U    [domain]user    指定应该在哪个用户上下文执行这个命令。
    
        /P    [password]       为提供的用户上下文指定密码。如果忽略,提示
                               输入。
    
        /FI   filter           应用筛选器以选择一组任务。
                               允许使用 "*"。例如,映像名称 eq acme*
    
        /PID  processid        指定要终止的进程的 PID。
                               使用 TaskList 取得 PID。
    
        /IM   imagename        指定要终止的进程的映像名称。通配符 '*'可用来
                               指定所有任务或映像名称。
    
        /T                     终止指定的进程和由它启用的子进程。
    
        /F                     指定强制终止进程。
    
        /?                     显示帮助消息。
    
    筛选器:
        筛选器名      有效运算符                有效值
        -----------   ---------------           -------------------------
        STATUS        eq, ne                    RUNNING |
                                                NOT RESPONDING | UNKNOWN
        IMAGENAME     eq, ne                    映像名称
        PID           eq, ne, gt, lt, ge, le    PID 值
        SESSION       eq, ne, gt, lt, ge, le    会话编号。
        CPUTIME       eq, ne, gt, lt, ge, le    CPU 时间,格式为
                                                hh:mm:ss。
                                                hh - 时,
                                                mm - 分,ss - 秒
        MEMUSAGE      eq, ne, gt, lt, ge, le    内存使用量,单位为 KB
        USERNAME      eq, ne                    用户名,格式为 [domain]user
        MODULES       eq, ne                    DLL 名称
        SERVICES      eq, ne                    服务名称
        WINDOWTITLE   eq, ne                    窗口标题
    
        说明
        ----
        1) 只有在应用筛选器的情况下,/IM 切换才能使用通配符 '*'2) 远程进程总是要强行 (/F) 终止。
        3) 当指定远程机器时,不支持 "WINDOWTITLE""STATUS" 筛选器。
    
    例如:
        TASKKILL /IM notepad.exe
        TASKKILL /PID 1230 /PID 1241 /PID 1253 /T
        TASKKILL /F /IM cmd.exe /T
        TASKKILL /F /FI "PID ge 1000" /FI "WINDOWTITLE ne untitle*"
        TASKKILL /F /FI "USERNAME eq NT AUTHORITYSYSTEM" /IM notepad.exe
        TASKKILL /S system /U 域用户名 /FI "用户名 ne NT*" /IM *
        TASKKILL /S system /U username /P password /FI "IMAGENAME eq note*"
    
    C:Users羊羊>

    例如笔者打开了迅雷这个软件,可以用taskkill来杀死这一进程,迅雷的程序名为Thunder.exe,结果如下

    C:Users羊羊>taskkill /F /IM Thunder.exe
    成功: 已终止进程 "Thunder.exe",其 PID 为 13788。
    
    C:Users羊羊>

    我们发现刚刚打开的迅雷就被关闭了。

    所以我们使用taskkill来关闭浏览器,python代码如下

    import webbrowser as web
    import time
    import os
    import random
    count = random.randint(3,5)
    j = 0
    while j < count:
        i = 0
        while i <= 5:
            web.open_new_tab('http://aqtyhj.blog.sohu.com/321768697.html')
            i = i + 1
            time.sleep(1.0)
        else:
            os.system('taskkill /F /IM Opera.exe')
            print j, 'times closing browser'
        j = j + 1

    在这里,我们仍需要引入第三方函数库httplib2,不然有些函数不能调用,关于httplib2的安装,可以参考笔者的这篇博客,这里就不再赘述。

    webbrowser函数的作用是打开链接地址

    os是系统自带函数库,目的是为了引入taskkill关闭浏览器

    time函数是为了每打开一个网页需要一定的时间延迟,给CPU休息的时间,这里为1s

    random是生成随机数,这里的范围是在3~5范围内生成一个随机数,也就是m的次数,而n的次数为i+1,为什么要加1,是因为i从0开始,所以5+1一共就是6次

    接下来打开IDLE(python GUI)

    点击File,再点击New File,将代码粘贴上去,如下图

    再点击File,命名保存

    笔者建议保存在python2.7的目录下,就是python的安装目录,保存成功后,点击Run运行代码,由于该过程是动态的,不好捕捉,但是可以在IDEL中看到结果,也可以观察博客的阅读量

     如上图,阅读量应该增加了3*6次,我们看看结果

    好像多了一次,因为在这一过程中可能有其它的访客浏览过。

  • 相关阅读:
    云主机上搭建squid3代理服务器
    常见问题集锦
    [DFNews] Guidance推出EnCase v7.06以及EnCase Imager 7.06
    [计算机取证] JumpLists file names and AppID calculator
    [eDiscovery] The Longterm Preservation of Digital Evidence
    [DFNews] GSI发布EnCase v7.07
    [DFNews] eDEC发布“狼蛛”2.0手机取证系统
    [手机取证] CelleBrite Android Lock Bypass
    [DFNews] CelleBrite发布可视化关联分析软件Link Analysis 1.7
    [DFNews] EnCE认证变化,v6认证及相关课程即将取消
  • 原文地址:https://www.cnblogs.com/chenjie520/p/6272626.html
Copyright © 2011-2022 走看看