文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>最简单的灌水机

最简单的灌水机

时间:2006-03-29  来源:wuhen33400

#! /usr/bin/python

import urllib, urllib2, cookielib
import re, time

#####################################
#
# Globals
#
#####################################
site = 'http://www.**********.com.cn/bbs'
params = {'title':'Re:', 'body':'Up Up', 'userface':'1'}
data = urllib.urlencode(params)

####################################
#
# Store the cookie
#
####################################
cj = cookielib.CookieJar()
opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cj))

########################
#
# setup connection
#
########################
conn = opener.open(site + '/index.asp')

####################################
#
# Find the passcode and prompt user
#
####################################
conn  = opener.open(site + '/code.asp')
conn.read(54) # the header of bitmap file
debug = ['', '', '', '', '', '', '', '', '', '']
s = ['', '', '', '']
bg = '\xee\xee\xee'

for x in range(0, 10):
 for y in range(0, 4):
  for z in range(0, 10):
   data = conn.read(3)
   if data == bg:
    s[y] += '1'
    debug[x] += ' '
   else:
    s[y] += '0'
    debug[x] += '#'
  #debug[x] += '|'

for x in range (9, -1, -1):
 print debug[x]
 
passcode = raw_input('Please input passcode as above: ')
params = {'username':'elf_cr', 'UserPassword':'spirit', 'passcode':passcode}
data = urllib.urlencode(params)
req = urllib2.Request(site + '/chkuserj.asp', data)
conn = opener.open(req);

##############################
#
# find titles
#
##############################
conn = opener.open(site + '/jj.asp?fenlei=3')
reo = re.compile(r'titleid=(\d+)');
f = conn.readlines()
for line in f:
    if line.find('titleid=') != -1:
        m = reo.search(line);
        tid = m.group(1)
        # post my replies
        print 'Re: ' + tid
        conn = opener.open(site + '/saveh.asp?fenlei=2&titleid=' + tid, data)
        conn.close()

  主要是学习了一下如何使用urllib, urllib2等和HTTP有关的module。能很快写出来的一个重要原因是网站的验证码是非常简单的24位BMP。而且没有任何的变形,所以很好识别。但是我比较懒,就没有做10个数字的图片来比较,而是自己手工输入验证码。   另外就是练习了一下re这个module。   昨天晚上刷了一下墙,搞出来400来分。这个程序还是有很多缺陷的。比如我应该做一个回帖的Sequence,从里边随机抽取内容,而不是使用一个固定的字符串来作为回帖内容。还有就是发贴延时了什么的。
相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载