LUA提取免费迅雷账号
发布时间:2020-12-14 21:57:23 所属栏目:大数据 来源:网络整理
导读:--获取http://www.521xunlei.com/ 免费迅雷账号function getPageid()local http = require("socket.http")local url = "http://521xunlei.com/forum.php?mod=forumdisplayfid=2orderby=dateline"local resp = http.request(url)local s = string.find(resp,"
--获取http://www.521xunlei.com/ 免费迅雷账号 function getPageid() local http = require("socket.http") local url = "http://521xunlei.com/forum.php?mod=forumdisplay&fid=2&orderby=dateline" local resp = http.request(url) local s = string.find(resp,"<tbody id="normalthread_") local e = string.find(resp,"">",s) local pageid = string.sub(resp,s + 24,e - 1) return pageid end function getDatas() local urlpre = "http://521xunlei.com/thread-" local url = urlpre .. getPageid() .. "-1-1.html" local http = require("socket.http") local html = http.request(url) local i = 1 local usrstart,usrend,psdstart,psdend,temp_x,temp_y while(string.find(html,"爱密码迅雷会员共享",i)) do i,j = string.find(html,i) usrstart = j + 1 usrend,temp_x = string.find(html,"独家分享密码",j) psdstart = temp_x + 1 usrend = usrend - 1 temp_y,_ = string.find(html,"</font>",temp_x) psdend = temp_y - 1 print("用户名:" .. string.sub(html,usrstart,usrend) .. " 密码:" .. string.sub(html,psdend)) i = psdend end end print(getDatas()) --[[ 按照发帖时间将帖子排序 http://521xunlei.com/forum.php?mod=forumdisplay&fid=2&orderby=dateline 最新帖子查找example: <tbody id="normalthread_8901"> ]] --匹配的字符串有问题了,导致获取不到 参考一篇博文:http://www.voidcn.com/article/p-ybryxdgf-bgp.html http://www.voidcn.com/article/p-chowfiks-do.html . 任意字符 %s 空白符 %p 标点 %c 控制字符 %d 数字 %x 十六进制数 %z 代表0的字符 %a 字母 %l 小写字母 %u 大写字母 %w 字母数字 字符类的大写形式代表相应集合的补集, 比如 %A 表示除了字母以外的字符集 另外,* + - 三个,作为通配符分别表示: *: 匹配前面指定的 0 或多个同类字符, 尽可能匹配更长的符合条件的字串 +: 匹配前面指定的 1 或多个同类字符, 尽可能匹配更长的符合条件的字串 -: 匹配前面指定的 0 或多个同类字符, 尽可能匹配更短的符合条件的字串 于是, "(%a+)%s*=%s*(%a+)" 表示, 先匹配一个或多个字母, 然后是零个或多个空白符(比如空格), 然后是个 '=', 然后空白符, 然后字母。这样, 满足匹配的只有 "name = Anna"。 所以输出位置为 2 12. 因为捕获了两个 (%a+), 也就是 name,Anna 这两个单词, 所以还输出了这两个单词 代码更改为: --获取http://www.521xunlei.com/ 免费迅雷账号 function getPageid() local http = require("socket.http") local url = "http://521xunlei.com/forum.php?mod=forumdisplay&fid=2&orderby=dateline" local resp = http.request(url) local s = string.find(resp,e - 1) return pageid end function getDatas() local urlpre = "http://521xunlei.com/thread-" local url = urlpre .. getPageid() .. "-1-1.html" local http = require("socket.http") local html = http.request(url) local title_x,title_y _,title_x = string.find(html,"<span id="thread_subject">"); title_y,"</span>",title_x) print("t" .. string.sub(html,title_x + 1,title_y - 1) .. "n") local html_x = string.find(html,"<td class="t_f"") local html_y = string.find(html,"</td>",html_x) html = string.sub(html,html_x,html_y) --[[ <td class="t_f" id="postmessage_170571">...</td> ]] local i,psdend i = 1 while(string.find(html,"迅雷",i) usrstart,usrend = string.find(html,("(%w+):%d"),i) if(usrstart == nil or usrend == nil) then break end psdstart,psdend = string.find(html,"%d%d%d%d%d%d%d",usrend) if(psdstart == nil or psdend == nil) then break end i = psdend + 1 print("账号:" .. string.sub(html,usrend) .. "t密码:" .. string.sub(html,psdend)) end end print(getDatas()) os.execute("pause") --[[ 按照发帖时间将帖子排序 http://521xunlei.com/forum.php?mod=forumdisplay&fid=2&orderby=dateline 最新帖子查找example: <tbody id="normalthread_8901"> ]] 测试: 因为获取到的迅雷账号,不一定保证有效,所以要写一个批量登陆验证的脚本。(待续...) 方法: 1、获取窗口句柄 2、sendmessage实现 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |