当前位置: 首页 >> 程序设计 >> Python实现的在线保持
 

Python实现的在线保持

作者:gashero      来源:csdn     发表时间:2006-07-07     浏览次数:      字号:    

Python实现的在线保持
偶所在的校园网,如果一段时间没有下载流量则自动断网,所以编写此程序定期访问网络,下载一些无关紧要的数据,来保持网络链接。

 

 

 

# -*- coding: gbk -*-

from socket import *
import time

GET_DATA="""\
GET / HTTP/1.1
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, application/x-shockwave-flash, */*
Accept-Language: zh-cn
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; Maxthon)
Host: %s
Connection: Keep-Alive

"""

siteList=[
 ('202.108.22.5',80),
 ('61.135.133.103',80),
 ('71.5.7.138',80),
 ('216.109.112.135',80),
 ('202.108.9.16',80)
 ]

def loop():
 global siteList
 for addr,port in siteList:
  data=''
  try:
   s=socket(AF_INET,SOCK_STREAM)
   s.settimeout(30) #超时30秒
   s.connect((addr,port))
   s.send(GET_DATA%addr)
   data=s.recv(64)
   if data=='':
    print 'IP: %s'%addr+" can't connect!"
   else:
    print 'IP: %s'%addr+" OK !!!!!!!!!!!!!!!!"
  except timeout,detail:
   #超时错误
   print "超时错误 %s"%addr
   pass
  except error,detail:
   #其他Socket错误
   print "其他Socket错误 %s"%addr
   pass
  #except:
   #所有错误
  # pass
  s.close()
  print '='*60
  time.sleep(30)
 return

def main():
 while True:
  loop()
 return

if __name__=='__main__':
 main()

责任编辑 webmaster

 
 
 
 
 
评论更多>>
 
 
 
发表
 
姓名: QQ:
性别: MSN:
E-mail: 主页:
评分: 1 2 3 4 5
评论内容:
验证码:
  
  • 请遵守《互联网电子公告服务管理规定》及中华人民共和国其他各项有关法律法规。
  • 严禁发表危害国家安全、损害国家利益、破坏民族团结、破坏国家宗教政策、破坏社会稳定、侮辱、诽谤、教唆、淫秽等内容的评论 。
  • 用户需对自己在使用本站服务过程中的行为承担法律责任(直接或间接导致的)。
  • 本站管理员有权保留或删除评论内容。
  • 评论内容只代表网友个人观点,与本网站立场无关。
  •