--获取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, psdstart, psdend))
i = psdend
end
end print(getDatas()) --[[
按照发帖时间将帖子排序
http://521xunlei.com/forum.php?mod=forumdisplay&fid=2&orderby=dateline
最新帖子查找example:
<tbody id="normalthread_8901">
]]

--匹配的字符串有问题了,导致获取不到

参考一篇博文:http://blog.csdn.net/zhangxaochen/article/details/8084396

http://blog.csdn.net/ruiyiin/article/details/25953155

.  任意字符
%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, "<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 title_x, title_y
_, title_x = string.find(html, "<span id=\"thread_subject\">");
title_y, _ = string.find(html, "</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,usrstart, usrend, psdstart, psdend
i = 1
while(string.find(html, "迅雷", i))
do
i, _ = 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, usrstart, usrend) .. "\t密码:" .. string.sub(html, psdstart, 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实现

LUA提取免费迅雷账号的更多相关文章

  1. swift语言注册非免费苹果账号iOS游戏框架Sprite Kit基础教程

    swift语言注册非免费苹果账号iOS游戏框架Sprite Kit基础教程 1.2.3  注册非免费苹果账号swift语言注册非免费苹果账号iOS游戏框架Sprite Kit基础教程 免费的苹果账号在 ...

  2. 免费苹果账号(apple id)申请ios证书p12真机调试

    HBuilder可以直接打包越狱版的ipa包,但需要越狱手机才能安装,如果需要安装到没越狱的手机安装,需要自己申请ios证书打包. 一般是需要一个付费了的苹果开发者账号才能申请ios证书打包. 这里介 ...

  3. 免费ss账号网站

    下面网址按排序顺序优先使用,数字越小优先级越高 1,https://io.freess.today/ 2,https://free-ss.site/ 3,https://ss.freess.org/ ...

  4. 免费s账号网站

    下面网址按排序顺序优先使用,数字越小优先级越高 1,https://io.freess.today/ 2,https://free-ss.site/ 3,https://ss.freess.org/ ...

  5. 微信公众号开发第六课 BAE结合实现迅雷账号随机分享

    迅雷离线是个好东西,那么我们能不能实现这样一个功能,回复迅雷,随机返回一个迅雷账户和密码. 首先在t_type类型表中添加 迅雷以及对应用值xunlei,这样返回的case值中对应值xunlei. 建 ...

  6. codeforge免费下载账号 积分账号 共享账号

    codeforge网站下载代码很好,没有积分怎么办?那么多好的matlab代码,matlab程序,C,JAVA等等,都要充值啊!!! 请用下面共享的codeforge账号密码========> ...

  7. pudn免费下载账号 codeforge积分账号 pudn共享账号 codeforge下载账号

    www.pudn.com和www.codeforge.cn网站下载代码很好,没有积分怎么办?那么多好的matlab代码,matlab程序,C,JAVA等等,都要充值啊!!! 下面的账号积分都用完了,大 ...

  8. 速成KeePass全局自动填表登录QQ与迅雷(包括中文输入法状态时用中文用户名一键登录)

    原文:http://bbs.kafan.cn/thread-1637531-1-1.html 使用目的:1 网页和本地客户端登录一站式解决2 通过KeePss修改密码和登录更方便,可以复制粘贴,省了输 ...

  9. NeuChar 平台使用及开发教程(二):设置平台账号

    在上一篇<NeuChar 平台使用及开发教程(一):开始使用 NeuChar>中我们了解了 NeuChar 的角色和大体功能框架,并进行了注册,本文将介绍如何设置多账号,以便让 NeuCh ...

随机推荐

  1. 1041 考试座位号 (15 分)C语言

    每个 PAT 考生在参加考试时都会被分配两个座位号,一个是试机座位,一个是考试座位.正常情况下,考生在入场时先得到试机座位号码,入座进入试机状态后,系统会显示该考生的考试座位号码,考试时考生需要换到考 ...

  2. 开源工具abaplint的介绍

    长期以来,SAP提供的标准ABAP开发工具是我们对代码进行检查的唯一方式.这意味着我们只能对ABAP服务器上的ABAP代码做出分析,而离线代码则成为了纯粹的文本,开发者无法对其进行检查.abaplin ...

  3. JUC 中的 Atomic 原子类总结

    1 Atomic 原子类介绍 Atomic 翻译成中文是原子的意思.在化学上,我们知道原子是构成一般物质的最小单位,在化学反应中是不可分割的.在我们这里 Atomic 是指一个操作是不可中断的.即使是 ...

  4. 小白学Java:包装类

    目录 小白学Java:包装类 包装类的继承关系 创建包装类实例 自动装箱与拆箱 自动装箱 自动拆箱 包装类型的比较 "=="比较 equals比较 自动装箱与拆箱引发的弊端 自动装 ...

  5. 【笔试/面试题】中科创达——9.28(持续更新ing)

    1. 线程与进程的区别 进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,是系统进行资源分配和调度的一个独立单位. 线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独 ...

  6. APP开通支付宝支付 转账功能

    注意:支付宝单笔转账到账户功能的准入条件 首先要在商家中心注册,从商家中心可以跳转到开放平台. 登陆蚂蚁金服开放平台 1 开发中心->网页&移动应用 2 根据需求选择应用类型创建应用 3 ...

  7. 你还不会Git?那就不要写代码了(一)

    Git应用开发学习 如果你还不会使用Git,那就不要写代码了. 一旦你会使用了Git,就再也不想使用SVN了.永远也回不去了. Mac上使用Git,肯定离不开对Mac上的操作.就要使用常用的Linux ...

  8. FJUT-1370 记录一次解题过程

    题目在福工院的1370 首先看题目,好家伙,全英文 那么大致的题意就是.有几个城市同在一条线上(相当于在x轴上),max i是第i个城市到其他所有城市的距离中的最大值,min i也就是所有中最小的. ...

  9. 12.Android-SQLiteOpenHelper使用

    1.SQLite介绍 SQLite,是一款轻型的数据库,它的优缺点有如下: 轻量级,适合嵌入式设备,并且本身不依赖第三方的软件,使用它也不需要“安装”. 并发(包括多进程和多线程)读写方面的性能不太理 ...

  10. 【UEFI】---BIOS中对Guid的使用以及Lib函数的使用总结

    ---恢复内容开始--- BIOS发展至今传统的汇编实现早已被抛弃,UEFI作为目前一套主流的标准定义接口,被广泛使用.之前被一些有关GUID和一些Lib函数的使用以及跨Pkg调用给折腾的不行,每次改 ...