2009年2月9日星期一

【python】博客人气助手第三波——代理刷流量

写在前面的话

在使用python编程之前,你要确保你的计算机里安装了python。UNIX/LINUX的用户不

用另外的安装python,他们已经存在在你的计算机里,windows用户请到官方网站下载

python,推荐下载版本2.5.4高版本可能会出现不能理解的问题(本人已经遇到,3.0的IDLE

里不能运行程序)。安装完python要设置环境变量:我的电脑->属性->高级->环境变量,点

击选中path,然后再点击编辑,在最后加上;c:\pythonXX(XX是你的版本号如:25)确定

完成设置。

如图:


检测您的Python是否能用

我们来检查下您是否设置对了python:WIN-R->CMD 输入python 如果出现如下截图



那么恭喜您,您的python已经可以正常使用了(3.0版的不能保证-_-!!!)

一个简单的实例——博客刷人数第三波之代理刷流量

这是一个十分简单程序,程序我做了注释,相信您看下就会明白
# ProxyBat_v1.1.py 

import urllib2 

# 用来记录发生错误的个数 

num_Error=

# 用来存放代理地址的文件 

f=file('proxy.txt','r'

# 读取文件每一行的代理地址 

while True: 

    line=f.readline() 

    
if len(line)==0

        
break 

# 使用自己的代理地址,注意ProxyHandler()的参数必须是字典类型 

# build_opener()创建一个实例句柄 

# 使用这个句柄通过open方法访问目标网址 

# 为了便于知道哪些代理地址不能用,这里我抛出了两个已知异常,并输出异常代理地址 

# 最后打印出发生异常的个数 

    
try

        proxy_handler = urllib2.ProxyHandler({
'http':'http://'+line}) 

        opener = urllib2.build_opener(proxy_handler) 

        opener.open(
'http://hi.baidu.com/sruingking'

    
except urllib2.URLError: 

        
print 'URLError! The bad proxy is %s' % line 

        num_Error=num_Error+


    
except urllib2.HTTPError: 

        
print 'HTTPError! The bad proxy is %s' % line 

        num_Error=num_Error+


    
except

        
print 'Unknown Errors! The bad proxy is %s' % line 

        num_Error=num_Error+


f.close() 

print '%d Errors' % num_Error 


下面是一个输出异常的截图:



写在后面的话

程序很简单,可为了找到要用到的函数,我第一次翻看了全英文的文档,也就是Python

提供的官方文档,程序中我对几个方法和函数的注释不是很清楚,也就是怕自己的翻译误导

您,如果您看了本文对python感兴趣,您可以自己翻翻看看,上面的资料很全。

对程序的补充说明

虽然知道有的代理地址会不能用,带并不知道会刷的那么慢,满以为一瞬间就会刷完,没想到过了20分钟才将143个代理访问完,而且返回44个异常地址,实际刷了92次。实际

效果并没有预想的那么好,我的热情也就冷却了一半。Pryhon和C的区别还是比较大的,

文档上的解释也不是和MSDN一路,可能还是函数和方法的选用上有些问题,我会继续看

文档,权当学英语了,看看能不能有什么其他的发现。

郑重声明:此程序本人原创,只在本人blogger、百度博客、QQ空间和电脑爱好者官方论坛编程版发布,除此之外未经本人授权散布者均为侵权 ,本人保留诉讼权
授权链接: http://sruing.blogspot.com
http://hi.baidu.com/sruingking
http://bbs.cfan.com.cn/thread-840294-1-1.html

没有评论:

发表评论