爬取流程:模拟登录→获取Html页面→正则解析所有符合条件的行→逐一输出符合条件的行的所有列
详细代码
# coding=utf-8
import urllib
import urllib2
import cookielib
import re
class Pyw():
#初始化数据
def __init__(self):
#登录的Url地址
self.LoginUrl="http://v.pyw.cn/login/check"
#所要获取的Url地址
self.PageUrl="http://v.pyw.cn/Data/accountdetail/%s"
# 传输的数据:用户名、密码、是否记住用户名
self.PostData = urllib.urlencode({
"username": "15880xxxxxx",
"password": "a123456",
"remember": "1"
})
#第几笔记录
self.PageIndex=0;
#循环获取共4页内容
self.PageTotal=1
#正则解析出tr
self.TrExp=re.compile("(?isu)<tr[^>]*>(.*?)</tr>")
#正则解析出td
self.TdExp = re.compile("(?isu)<td[^>]*>(.*?)</td>")
#创建cookie
self.cookie = cookielib.CookieJar()
#构建opener
self.opener=urllib2.build_opener(urllib2.HTTPCookieProcessor(self.cookie))
#解析页面总页数
self.Total=4
#解析网页中的内容
def GetPageItem(self,PageHtml):
#循环取出Table中的所有行
for row in self.TrExp.findall(PageHtml):
#取出当前行的所有列
coloumn=self.TdExp.findall(row)
#判断符合的记录
if len(coloumn) == 9:
#计算当前属于第几条记录
self.PageIndex = self.PageIndex + 1
#打印输出结果
print "===第%s条记录===" % self.PageIndex
print "游戏账号:%s" % coloumn[0].strip()
print "用户类型:%s" % coloumn[1].strip()
print "游戏名称:%s" % coloumn[2].strip()
print "渠道:%s" % coloumn[3].strip()
print "充值类型:%s" % coloumn[4].strip()
print "充值金额:%s" % coloumn[5].strip().replace("¥", "")
print "返利金额:%s" % coloumn[6].strip().replace("¥", "")
print "单号:%s" % coloumn[7].strip()
print "日期:%s" % coloumn[8].strip()
print
def GetPageHtml(self):
try:
#模拟登录
request=urllib2.Request(url=self.LoginUrl,data=self.PostData)
ResultHtml=self.opener.open(request)
#开始执行获取页面数据
while self.PageTotal<=self.Total:
#动态拼凑所要解析的Url
m_PageUrl = self.PageUrl % self.PageTotal
#计算当期第几页
self.PageTotal = self.PageTotal + 1
#获取当前解析页面的所有内容
ResultHtml=self.opener.open(m_PageUrl)
#解析网页中的内容
self.GetPageItem(ResultHtml.read())
except Exception,e:
print "404 error!%s" % e
p=Pyw()
p.GetPageHtml()
抓取结果
C:\Python27\python.exe D:/Users/PycharmProjects/helloworld/getPyw.py
===第1条记录===
游戏账号:pyw254644882
用户类型:分包注册
游戏名称:战神之怒-疯趣版
渠道:安卓-疯趣端
充值类型:直充
充值金额:100.00
返利金额:60.00
单号:Q1702036N2458845
日期:2017-02-03 16:47:47
===第2条记录===
游戏账号:pyw254644882
用户类型:分包注册
游戏名称:战神之怒-疯趣版
渠道:安卓-疯趣端
充值类型:直充
充值金额:10.00
返利金额:6.00
单号:A1702036N2439509
日期:2017-02-03 00:24:49
===第3条记录===
游戏账号:pyw254644882
用户类型:分包注册
游戏名称:战神之怒-疯趣版
渠道:安卓-疯趣端
充值类型:直充
充值金额:10.00
返利金额:6.00
单号:A1702036N2439357
日期:2017-02-03 00:22:25
===第4条记录===
游戏账号:pyw254644882
用户类型:分包注册
游戏名称:战神之怒-疯趣版
渠道:安卓-疯趣端
充值类型:直充
充值金额:30.00
返利金额:18.00
单号:X1702026N2437346
日期:2017-02-02 23:43:19
===第5条记录===
游戏账号:pyw253315523
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:直充
充值金额:10.00
返利金额:5.50
单号:V1702016N2403413
日期:2017-02-01 21:27:18
===第6条记录===
游戏账号:pyw253699553
用户类型:分包注册
游戏名称:传奇1.76-疯趣版
渠道:安卓-疯趣端
充值类型:直充
充值金额:5.00
返利金额:3.00
单号:Q1702016N2395745
日期:2017-02-01 16:42:03
===第7条记录===
游戏账号:pyw253699553
用户类型:分包注册
游戏名称:传奇1.76-疯趣版
渠道:安卓-疯趣端
充值类型:直充
充值金额:6.00
返利金额:3.60
单号:O1702016N2391830
日期:2017-02-01 14:49:30
===第8条记录===
游戏账号:pyw249575683
用户类型:分包注册
游戏名称:传奇1.76-疯趣版
渠道:安卓-疯趣端
充值类型:直充
充值金额:12.00
返利金额:7.20
单号:C1702016N2377867
日期:2017-02-01 02:16:13
===第9条记录===
游戏账号:pyw249575683
用户类型:分包注册
游戏名称:传奇1.76-疯趣版
渠道:安卓-疯趣端
充值类型:直充
充值金额:5.00
返利金额:3.00
单号:C1702016N2377862
日期:2017-02-01 02:15:54
===第10条记录===
游戏账号:pyw249575683
用户类型:分包注册
游戏名称:传奇1.76-疯趣版
渠道:安卓-疯趣端
充值类型:直充
充值金额:12.00
返利金额:7.20
单号:B1702016N2377575
日期:2017-02-01 01:58:12
===第11条记录===
游戏账号:pyw249575683
用户类型:分包注册
游戏名称:传奇1.76-疯趣版
渠道:安卓-疯趣端
充值类型:直充
充值金额:5.00
返利金额:3.00
单号:B1702016N2377552
日期:2017-02-01 01:57:31
===第12条记录===
游戏账号:pyw249575683
用户类型:分包注册
游戏名称:传奇1.76-疯趣版
渠道:安卓-疯趣端
充值类型:直充
充值金额:5.00
返利金额:3.00
单号:B1702016N2377421
日期:2017-02-01 01:49:54
===第13条记录===
游戏账号:pyw251928966
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:直充
充值金额:10.00
返利金额:5.50
单号:W1701316N2370162
日期:2017-01-31 22:21:20
===第14条记录===
游戏账号:pyw252917819
用户类型:分包注册
游戏名称:斗苍穹-疯趣版
渠道:安卓-疯趣端
充值类型:直充
充值金额:30.00
返利金额:0.00
单号:P1701316N2360250
日期:2017-01-31 15:22:20
===第15条记录===
游戏账号:pyw252917819
用户类型:分包注册
游戏名称:斗苍穹-疯趣版
渠道:安卓-疯趣端
充值类型:直充
充值金额:30.00
返利金额:0.00
单号:L1701316N2355572
日期:2017-01-31 11:57:37
===第16条记录===
游戏账号:pyw250609603
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:续充
充值金额:300.00
返利金额:21.00
单号:K1701312N1353214
日期:2017-01-31 10:23:50
===第17条记录===
游戏账号:pyw246401761
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:直充
充值金额:5.00
返利金额:2.75
单号:H1701316N2349930
日期:2017-01-31 07:58:19
===第18条记录===
游戏账号:pyw250609603
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:续充
充值金额:300.00
返利金额:21.00
单号:V1701302N1337613
日期:2017-01-30 21:12:46
===第19条记录===
游戏账号:pyw246401761
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:直充
充值金额:20.00
返利金额:11.00
单号:O1701306N2327230
日期:2017-01-30 14:08:57
===第20条记录===
游戏账号:pyw246401761
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:直充
充值金额:30.00
返利金额:16.50
单号:O1701306N2327185
日期:2017-01-30 14:06:56
===第21条记录===
游戏账号:pyw246401761
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:直充
充值金额:10.00
返利金额:5.50
单号:K1701306N2322260
日期:2017-01-30 10:51:43
===第22条记录===
游戏账号:pyw246401761
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:直充
充值金额:5.00
返利金额:2.75
单号:K1701306N2322112
日期:2017-01-30 10:46:25
===第23条记录===
游戏账号:pyw246401761
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:直充
充值金额:5.00
返利金额:2.75
单号:K1701306N2322083
日期:2017-01-30 10:45:38
===第24条记录===
游戏账号:pyw252167742
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:直充
充值金额:10.00
返利金额:5.50
单号:K1701306N2321491
日期:2017-01-30 10:23:45
===第25条记录===
游戏账号:pyw246045577
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:直充
充值金额:10.00
返利金额:5.50
单号:C1701306N2315507
日期:2017-01-30 02:34:05
===第26条记录===
游戏账号:pyw246045577
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:直充
充值金额:10.00
返利金额:5.50
单号:C1701306N2315501
日期:2017-01-30 02:33:37
===第27条记录===
游戏账号:pyw246045577
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:直充
充值金额:30.00
返利金额:16.50
单号:C1701306N2315326
日期:2017-01-30 02:22:26
===第28条记录===
游戏账号:pyw246045577
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:直充
充值金额:10.00
返利金额:5.50
单号:C1701306N2315229
日期:2017-01-30 02:16:39
===第29条记录===
游戏账号:pyw250609603
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:续充
充值金额:400.00
返利金额:28.00
单号:V1701292N1306714
日期:2017-01-29 21:46:48
===第30条记录===
游戏账号:pyw246401761
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:直充
充值金额:25.00
返利金额:13.75
单号:I1701296N2287106
日期:2017-01-29 08:38:07
===第31条记录===
游戏账号:pyw250609603
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:续充
充值金额:300.00
返利金额:21.00
单号:H1701292N1286076
日期:2017-01-29 07:42:18
===第32条记录===
游戏账号:pyw251444677
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:直充
充值金额:10.00
返利金额:5.50
单号:A1701296N2279803
日期:2017-01-29 00:18:36
===第33条记录===
游戏账号:pyw250609603
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:首充
充值金额:600.00
返利金额:42.00
单号:N1701281N1263707
日期:2017-01-28 13:45:47
===第34条记录===
游戏账号:pyw250609603
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:直充
充值金额:10.00
返利金额:5.50
单号:N1701286N2263219
日期:2017-01-28 13:26:06
===第35条记录===
游戏账号:pyw249575683
用户类型:分包注册
游戏名称:传奇1.76-疯趣版
渠道:安卓-疯趣端
充值类型:直充
充值金额:12.00
返利金额:7.20
单号:M1701286N2262336
日期:2017-01-28 12:46:42
===第36条记录===
游戏账号:pyw249576432
用户类型:分包注册
游戏名称:传奇1.76-疯趣版
渠道:安卓-疯趣端
充值类型:直充
充值金额:6.00
返利金额:3.60
单号:X1701276N2245429
日期:2017-01-27 23:47:50
===第37条记录===
游戏账号:pyw250609603
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:直充
充值金额:10.00
返利金额:5.50
单号:W1701276N2243134
日期:2017-01-27 22:16:19
===第38条记录===
游戏账号:pyw249576432
用户类型:分包注册
游戏名称:传奇1.76-疯趣版
渠道:安卓-疯趣端
充值类型:直充
充值金额:12.00
返利金额:7.20
单号:V1701276N2242664
日期:2017-01-27 21:54:28
===第39条记录===
游戏账号:pyw249576432
用户类型:分包注册
游戏名称:传奇1.76-疯趣版
渠道:安卓-疯趣端
充值类型:直充
充值金额:5.00
返利金额:3.00
单号:V1701276N2242612
日期:2017-01-27 21:52:28
===第40条记录===
游戏账号:pyw249575683
用户类型:分包注册
游戏名称:传奇1.76-疯趣版
渠道:安卓-疯趣端
充值类型:直充
充值金额:5.00
返利金额:3.00
单号:R1701276N2236774
日期:2017-01-27 17:22:05
===第41条记录===
游戏账号:pyw249575683
用户类型:分包注册
游戏名称:传奇1.76-疯趣版
渠道:安卓-疯趣端
充值类型:直充
充值金额:6.00
返利金额:3.60
单号:R1701276N2236709
日期:2017-01-27 17:19:36
===第42条记录===
游戏账号:pyw246401761
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:直充
充值金额:30.00
返利金额:16.50
单号:M1701276N2229135
日期:2017-01-27 12:13:33
===第43条记录===
游戏账号:pyw246401761
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:直充
充值金额:1.00
返利金额:0.55
单号:M1701276N2228781
日期:2017-01-27 12:00:20
===第44条记录===
游戏账号:pyw246401761
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:直充
充值金额:10.00
返利金额:5.50
单号:K1701276N2225496
日期:2017-01-27 10:04:08
===第45条记录===
游戏账号:pyw246401761
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:直充
充值金额:10.00
返利金额:5.50
单号:K1701276N2225435
日期:2017-01-27 10:01:46
===第46条记录===
游戏账号:pyw246401761
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:直充
充值金额:25.00
返利金额:13.75
单号:J1701276N2225044
日期:2017-01-27 09:45:46
===第47条记录===
游戏账号:pyw246401761
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:直充
充值金额:25.00
返利金额:13.75
单号:J1701276N2224740
日期:2017-01-27 09:33:48
===第48条记录===
游戏账号:pyw246401761
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:直充
充值金额:30.00
返利金额:16.50
单号:J1701276N2224193
日期:2017-01-27 09:13:46
===第49条记录===
游戏账号:pyw249265979
用户类型:分包注册
游戏名称:传奇1.76-疯趣版
渠道:安卓-疯趣端
充值类型:直充
充值金额:5.00
返利金额:3.00
单号:B1701266N2188415
日期:2017-01-26 01:42:59
===第50条记录===
游戏账号:pyw243667938
用户类型:代充账号
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:首充
充值金额:10.00
返利金额:0.70
单号:H1701251N1161689
日期:2017-01-25 07:32:12
===第51条记录===
游戏账号:pyw246401761
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:直充
充值金额:10.00
返利金额:5.50
单号:N1701246N2141300
日期:2017-01-24 13:26:09
===第52条记录===
游戏账号:pyw243661284
用户类型:代充账号
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:续充
充值金额:5.00
返利金额:0.35
单号:K1701242N1136457
日期:2017-01-24 10:07:23
===第53条记录===
游戏账号:pyw243661284
用户类型:代充账号
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:续充
充值金额:30.00
返利金额:2.10
单号:K1701242N1136438
日期:2017-01-24 10:06:58
===第54条记录===
游戏账号:pyw247906248
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:直充
充值金额:10.00
返利金额:5.50
单号:X1701236N2127234
日期:2017-01-23 23:21:57
===第55条记录===
游戏账号:pyw243661284
用户类型:代充账号
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:续充
充值金额:1.00
返利金额:0.07
单号:I1701232N1109765
日期:2017-01-23 08:44:51
===第56条记录===
游戏账号:pyw243661284
用户类型:代充账号
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:首充
充值金额:10.00
返利金额:0.70
单号:I1701231N1109753
日期:2017-01-23 08:44:22
===第57条记录===
游戏账号:pyw246820821
用户类型:分包注册
游戏名称:斗苍穹-疯趣版
渠道:安卓-疯趣端
充值类型:直充
充值金额:6.00
返利金额:0.00
单号:X1701226N2102141
日期:2017-01-22 23:40:58
===第58条记录===
游戏账号:pyw244885594
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:直充
充值金额:10.00
返利金额:5.50
单号:U1701216N2071109
日期:2017-01-21 20:03:32
===第59条记录===
游戏账号:pyw242553202
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:直充
充值金额:5.00
返利金额:2.75
单号:N1701216N2063958
日期:2017-01-21 13:45:05
===第60条记录===
游戏账号:pyw242553202
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:直充
充值金额:10.00
返利金额:5.50
单号:R1701206N2041458
日期:2017-01-20 17:45:53
===第61条记录===
游戏账号:pyw242165554
用户类型:分包注册
游戏名称:斗苍穹-疯趣版
渠道:安卓-疯趣端
充值类型:直充
充值金额:6.00
返利金额:0.00
单号:W1701186N2993544
日期:2017-01-18 22:30:08
===第62条记录===
游戏账号:pyw241033815
用户类型:分包注册
游戏名称:传奇1.76-疯趣版
渠道:安卓-疯趣端
充值类型:直充
充值金额:12.00
返利金额:7.20
单号:G1701186N2974661
日期:2017-01-18 06:40:04
===第63条记录===
游戏账号:pyw241033815
用户类型:分包注册
游戏名称:传奇1.76-疯趣版
渠道:安卓-疯趣端
充值类型:直充
充值金额:6.00
返利金额:3.60
单号:F1701186N2974277
日期:2017-01-18 05:31:37
===第64条记录===
游戏账号:pyw241033815
用户类型:分包注册
游戏名称:传奇1.76-疯趣版
渠道:安卓-疯趣端
充值类型:直充
充值金额:5.00
返利金额:3.00
单号:F1701186N2974267
日期:2017-01-18 05:28:44
===第65条记录===
游戏账号:pyw240988693
用户类型:分包注册
游戏名称:传奇1.76-疯趣版
渠道:安卓-疯趣端
充值类型:直充
充值金额:5.00
返利金额:3.00
单号:B1701186N2972909
日期:2017-01-18 01:56:06
===第66条记录===
游戏账号:pyw233067623
用户类型:分包注册
游戏名称:传奇1.76-疯趣版
渠道:安卓-疯趣端
充值类型:直充
充值金额:5.00
返利金额:3.00
单号:W1701106N2781215
日期:2017-01-10 22:02:00
===第67条记录===
游戏账号:pyw203063195
用户类型:分包注册
游戏名称:三国无双-疯趣版
渠道:安卓-疯趣端
充值类型:直充
充值金额:6.00
返利金额:3.60
单号:M1612196N2138802
日期:2016-12-19 12:58:16
===第68条记录===
游戏账号:pyw197216968
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:直充
充值金额:5.00
返利金额:2.75
单号:N1612156N2052624
日期:2016-12-15 13:19:38
===第69条记录===
游戏账号:pyw197216968
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:直充
充值金额:5.00
返利金额:2.75
单号:N1612156N2052390
日期:2016-12-15 13:06:50
===第70条记录===
游戏账号:pyw187943838
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:直充
充值金额:10.00
返利金额:5.50
单号:R1612066N2859308
日期:2016-12-06 17:08:52
===第71条记录===
游戏账号:pyw187943838
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:直充
充值金额:10.00
返利金额:5.50
单号:R1612066N2859263
日期:2016-12-06 17:06:15
===第72条记录===
游戏账号:pyw187943838
用户类型:分包注册
游戏名称:时空猎人
渠道:安卓-优趣端
充值类型:直充
充值金额:10.00
返利金额:5.50
单号:Q1612066N2858979
日期:2016-12-06 16:50:03
Process finished with exit code 0