TC官方合作论坛
标题: http请求库,支持get、post、正则、执行js,有说明。 [打印本页]
作者: rainshine 时间: 2014-8-27 12:27
标题: http请求库,支持get、post、正则、执行js,有说明。
本帖最后由 rainshine 于 2015-2-7 17:04 编辑
废话没有。说明:http://rblog.cc/archives/1045
链接: http://pan.baidu.com/s/1qWDNrDa 密码:
2月7日最新更新,V2015,更加稳定!最新POST课程报名中:http://bbs.tyuyan.com/forum.php?mod=viewthread&tid=48434
降温教程-POST同步制作中文函数映射库,以http request库为主线。
开课时间:2月7日或8日
报名截止:2月9日或10日
上课时间:每晚8点(后续可能会根据大部分学员的需求调整至7:30左右,8点前后调整不超过半小时)
第一课:初见post第一课时:结识post
第一节, 误区-post和xmlhttp到底什么关系?
第二节, 典型实例-你将学到?
第三节, Tc内置命令实现最简单的请求代码(七中)
第二课时:所需工具简介
(此处暂不公布工具名…)
技巧-学会结合善用各种工具
第二课:POST请求实例第一课时,尝试抓包并结识http request库
第一节, 熟悉http watch (content)
第二节, 简单介绍httprequest.get
第三节, 尝试使用http request库写上节课的代码
第二课时,开始写post请求代码
第一节, post请求与get的代码不同之处
第三节, 技巧-及时地停掉抓包
第四节, 结识post函数-代码coding!
第三课:尝试修改GET与POST的参数与数据处理第一节, 修改参数-query string
第二节, 编码分析
第三节, 数据处理-mid函数出场
第一节, 修改参数-post data
第二节, 编码分析
第三节, 技巧-利用百度搜索加解码
第四课:实战post登陆-太平洋电脑网第一课时:老师讲授
第一节, 抓包
第二节, 写代码
第三节, 小技巧-故意登陆失败,错误密码
第二课时:动手coding
第一节, 动手写
第二节, 问题修正
第五课:为何密码是如此规律的“乱码”第一课时:揭秘常用的md5加密
第一节, md5加密的类型,简介
第二节, 实例
第二课时:参数中常见的token值从何而来-向上查找未知量
第一节, token的用途以及常见的来源
第二节, token应用实例
第三节, 技巧-提前打开抓包
第四节, 技巧-如何快速找到关键信息-find按钮
第六课:http header到底是什么第一课时:http header揭秘
第一节, 通常有的header项目以及用途-header选项卡
第二节, 反制防盗链-referer实例
第二课时:关于神奇的cookie
第一节, cookie的用途,来龙去脉-cookies选项卡
第二节, cookie实战-保存登陆cookie实现登陆之后的操作
第三节, 小技巧-巧辨重要cookie值,剔除无关代码
第七课:尝试注册机第一课时:基础知识铺垫
第一节, 什么是时间戳,及其通常用途与操作-times**p等函数
第二节, 验证码的下载-腾讯验证码的拉取(带cookie)
第三节, 技巧-快速找到符合你要求的请求-filter
第二课时:账号注册机实战!
第一节, 抓包
第二节, 动手
第八课:伪”线程池”第一课时:线程池的应用
第一节, 什么是线程池,用途有多广泛,简单实现模仿线程池功能
第二节, 如何使你的线程池效率更高、更完善、更稳定
第二课时:线程池实例
第一节, 批量注册机的实现
第二节, 内部技巧-启动调试模式-open / close debug mode函数
第九课:全面介绍http请求第一课时:抓包软件方面
第一节, 系统介绍stream选项卡
第二节, 系统介绍resp**e
第三节, 技巧-投机取巧的办法-fiddler抓所有进程的http包
第二课时:http request库方面
第一节, 使用的引擎详解-xmlhttp
第二节, 使用的引擎详解-winhttp
第三节, 这俩引擎的区别,以及为何选择winhttp
第四节, 揭秘库函数-winhttp.t文件内常用扩展函数-获得更多数据-实现更强大功能
第五节, 完整的post请求是如何写代码的
第十一课:认识正则表达式第一课时:何为正则
第一节, 认识正则,了解表达式写法
第二节, 表达式元字符简介
第二课时:正则进阶
第一节, 子表达式
第二节, 见识用途与威力-实战写表达式匹配文本
第三节, 技巧-利用在线正则表达式匹配测试
第四节, 常用表达式分享
第十二课:正则表达式与代码结合第一课时:正则写代码
第一节, tc内置正则命令
第二节, tc内置子表达式匹配命令
第三节, 误区-正则表达式复制到tc字符串注意转义字符
第二课时:http request库内的正则
第一节, regex test
第二节, regex replace
第三节, regex match
第四节, get match values与get submatch values
第十三课:实战巩固正则第一课时:正则写批量采集代理ip
第一节, 抓包,分析数据
第二节, 写正则,调试正则
第三节, 技巧-如何让你的正则更加准确无误地匹配
第四节, 写代码(线程池的应用)
第二课时:学员动手coding
第一节, 写代码
第二节, 错误修正
第十四课:post常用技术辅导第一课时:验证码解决方案
第一节, 介绍各种打码系统-uu云、打码兔
第二节, 介绍手机验证码-飞Q
第三节, 技巧-代码重用让你做项目更高效专注
第二课时:ip限制解决方案
第一节, 代理服务器ip
第二节, Vpn代理-领航365
第十五课:js初识***第一课时:js何等重要?
第一节, 什么是js,讲js有何用处,js加密的典例
第二节, 详细介绍firebug与ie调试人员工具
第二课时:js调试实例
第一节, 调试打断点找关键代码简单例子(仍在物色中…)
第二节, 技巧-零碎技巧
第十六课:js进阶***第一课时,改写并执行js
第一节, 将上节课找到的代码块改写并复制
第二节, Run js code函数详解
第二课时,剖析run js code函数
……
第十七课:js实战***第一课时:js调试稍难实例(腾讯)
第二课时:写代码
第十五课:如何使你的产品更具人性化第十九课:其他工具软件操作方法第一课时:charles
第二课时:http analyzer
第三课时:国产软件
……
第二十课:总结收尾扩展-利用post可以干坏坏的事情。。。
=============================================================
目前公开的函数:
空间名:HTTPRequest
函数名:
GET(URL,&Cookies="",ProxyServer="",Referer="")
一键执行get请求,参数1是地址,参数2是请求的头信息里需要带上的cookie值,且会返回服务器响应的头信息里的cookie,参数3是http/https代理服务器(IP:Port的格式),参数4是请求的头信息里需要带上的referer值。
GET2(URL,&Cookies="",ProxyServer="",Referer="",Timeout=10)
函数功能同GET,此函数是新版的测试函数,下个版本将改名为GET,此函数用的是winhttp对象,多了一个参数是超时时间,不超时为-1,以秒为单位。
POST(URL,Text,&Cookies="",ProxyServer="",Referer="")
一键执行post请求,参数2是需要发送的body,字符串。其他与get相同。
POST2(URL,ContentString,&Cookies="",ProxyServer="",Referer="",Timeout=10)
函数功能与POST函数相同,此函数是新版的测试函数,下个版本将改名为POST,此函数用的是winhttp对象,多了一个参数是超时时间,不超时为-1,以秒为单位。
ShowImage(URL,ID_PictureBox,ID_ParentWindow="",ProxyServer="",&Cookies="",Referer="")
显示图片到图片框,通常用来显示验证码,参数1验证码地址,参数2图片框名,参数3父窗口名,参数4、5、6同GET函数。
ShowImage2(URL,ID_PictureBox,ID_ParentWindow="",&Cookies="",ProxyServer="",Referer="")
函数功能同ShowImage,此函数是新版的测试函数,下个版本将改名为ShowImage,此函数用的是winhttp对象,多了一个参数是超时时间,不超时为-1,以秒为单位。注意:此函数的参数Cookies和ProxyServer调换了位置!!!!也就是说与GET请求的参数顺序相同了,只不过是中间加了一个图片框id,父窗口id。
Times**p()
返回字符串类型的当前毫秒级时间戳。
RunJSCode(FileName,FuncName,Param0=null,Param1=null,Param2=null,Param3=null,Param4=null)
执行js代码,用于有js加密的post,先把他的加密的部分的代码保存到一个txt文件里,然后调用此函数,写上js代码里的函数名和参数,就能得到返回值。参数1是保存代码的文件名,参数2是函数名(js里的),参数3往后都是【js函数的】参数,写上js代码的函数需要的参数值就可以了,暂支持5个参数。
StrMid(Text,Begin,End="")
取字符串中间,例:HTTPRequest.StrMid("2345678","3","7")=="456"。注意:此函数与正则模式匹配不同,是使用字符串搜索来实现的,也就是说如果开头或结束的标志出现多次,则以首次出现为准。例如:StrMid("2345745678","3","7")=="45",不等于"457456"(有兴趣可以看看我以前的文章,匹配括号)。
encodeURI(Text)、decodeURI(Text)、escape(Text)、unescape(Text)
编码函数,狭义地简单说就是。。可以把一些符号和中文编码成带百分号的那种。。。。。
RegexMatch(RegularExpression,SourceString,&Result,IgnoreCase=false,Global=true,Multiline=true)
正则匹配,参数类似tc自带命令,参数1正则表达式,参数2源字符串,参数3返回一维数组结果(里面的值是对象,要调用GetRegexMatchValues才能得到真正的匹配结果字符串),参数4是【忽略】大小写,参数5是全局匹配(是否要匹配多个),参数6是否多行匹配,返回值是匹配到多少个。
GetRegexMatchValues(MatchArray)
根据RegexMatch函数的Result参数返回的数组,返回匹配到的【真正结果字符串数组】。
GetRegexSubMatchValues(MatchArray)
根据RegexMatch函数的Result参数返回的数组,返回子表达式匹配结果字符串【二维数组】,类似于tc的字符串api,正则子表达式匹配;不同的是,这个返回值是个二维数组!第一维表示的是整个表达式匹配到的数量,第二维表示的是整个表达式其中的第几个子表达式。可能有些难理解,举个简单的例子:(\d)www.baidu.com(\w),假设这个表达式匹配到100个结果,那么调用本函数,返回的数组大小就是:[100][2],然后数组的[0][1],就是匹配到的首个字符串中,(\w)这个子表达式匹配的结果,那么[10][0]就是匹配到的第11个字符串中,(\d)这个子表达式匹配的结果值。
PS:有人可能会问,艾玛这么麻烦这么难理解,我为什么还要用你的正则,你为嘛还要封装这个库,为什么不直接像tc那样整合成一个函数呢。
答:如果我封装的和tc一样那我封装了还有什么意义。。这样做虽然麻烦,但是确实灵活了不少。其实我本来还想把函数再细分,但是怕用起来麻烦,就斟酌了很久找了个这样的中和方案。等下个版本或者我有空了,把一些里面的函数公开出来之后,你就会发现regexmatch返回的result可以做很多事情- -不用再去匹配一遍浪费时间。
RegexReplace(RegularExpression,SourceString,ReplaceString,IgnoreCase=false,Global=true,Multiline=true)
正则替换,参数一表达式,参数2源字符串,参数3替换到的字符串,参数4、5、6同regexmatch函数。
OpenDebugMode()
开启debug模式,调试输出一些“看不到”的值,比如http status,resp**eheaders。目前仅使用xmlhttp对象的代码支持debug模式,且因为tc升级的原因(以前正常,tc4.430挂了),出现了个bug,if里面的traceprint挂了,完全不执行= =(汗,不知道是什么情况,反正我是没看出来代码错误,若有高人可以帮忙找出原因感激不尽。)所以现在改成了用msgbox,开启之后执行请求会弹出消息框,然后会阻塞在这里,直到你确定。大家谅解……下个版本修复这个函数。
CloseDebugMode()
关闭调试模式。
DoEvents()
类似易语言的处理消息,就是把控制权暂时交还给系统,等他处理完消息之后再回来。用在大循环里特别好用。
============================
到这就结束了。。。这么多东西全手打的累死我了,我忽然发现又有一个促使我开源的理由。。。不写帮助!直接上代码!哈哈。
希望多多支持。http://rblog.cc/。
谢谢各位。午安。---rain
作者: Linn 时间: 2014-8-27 12:58
很强大,支持了
作者: 如此美丽。 时间: 2014-8-27 15:36
火前留名。
作者: rainshine 时间: 2014-8-27 16:17
火不了- -因为都觉得常规库很强大 用惯了。
作者: lidongxu 时间: 2014-8-27 16:57
顶
作者: znyyjk 时间: 2014-8-27 18:24
怎么换头像了,这头像一点也不欢乐
作者: rainshine 时间: 2014-8-27 19:40
那我再换回来。。今晚上抽空。
作者: YGV 时间: 2014-8-27 20:39
支持一个
作者: s52o1 时间: 2014-8-29 17:59
dddddddddddddd
作者: yanzehua 时间: 2014-8-30 03:20
就回家回家
作者: dear 时间: 2014-8-30 21:03



作者: 78213505 时间: 2014-8-30 21:10
看一看
作者: da1990 时间: 2014-8-31 14:44
http请求库 很强大
作者: yvyan 时间: 2014-9-1 13:54
很好很强大
作者: xf8725 时间: 2014-9-1 16:48
支持,谢谢分享
作者: 守护天使 时间: 2014-9-2 20:00
废话没有。
作者: binghu 时间: 2014-9-2 21:02
支持···
作者: 薇草天下 时间: 2014-9-2 22:23
回复看看是神马东东!!...
作者: 用心来 时间: 2014-9-3 09:15
哈哈厉害
作者: whoyeyang 时间: 2014-9-3 11:22
强烈支持!
作者: 用心来 时间: 2014-9-3 16:03
times**p()这里的*号是被河蟹了,还是函数名,还是指针?
作者: chinaxhb 时间: 2014-9-3 16:22
看看怎么样.
作者: smallduck218 时间: 2014-9-4 09:13
我感觉很好 非常的棒 继续加油
作者: sam7894604 时间: 2014-9-6 03:40
DoEvents()
類似易語言的處理消息,就是把控制權暫時交還給系統,等他處理完消息之後再回來。用在大循環裡特別好用。
请注明 线程内不要使用!
作者: sam7894604 时间: 2014-9-6 03:45
本帖最后由 sam7894604 于 2014-9-6 04:34 编辑
出现了个bug,if里面的traceprint挂了,完全不执行= =(汗,不知道是什么情况,反正我是没看出来代码错误,若有高人可以帮忙找出原因感激不尽。)
在TC里traceprint本身就是个关键字,关键字里面不能包含关键字的…
貌似我理解错,经测试4.430的TLL的调试输出好像都无效了!
作者: rainshine 时间: 2014-9-6 08:09
谢谢
作者: rainshine 时间: 2014-9-6 08:10
和谐了。。。。time s**p
作者: rainshine 时间: 2014-9-6 08:10
谢谢。
作者: rainshine 时间: 2014-9-6 08:11
多线程无所谓啊。
作者: rainshine 时间: 2014-9-6 08:11
嗯好像是……很苦逼。
作者: rainshine 时间: 2014-9-6 08:11
唉 我都懒得跟tc官方反映了。
作者: a1648004555 时间: 2014-9-6 09:48
ddddddddddddddddddddd
作者: sam7894604 时间: 2014-9-6 11:39
短其间内,多线程会无所谓,程序运行长时间,就会莫名崩溃…
这是我写易的经验…
作者: sam7894604 时间: 2014-9-6 11:46
4.430是我认为问题最多的版本之一...
作者: rainshine 时间: 2014-9-6 13:07
易语言不是用这个命令实现的。
作者: rainshine 时间: 2014-9-6 13:07
。。。其实我也这么觉得,越改问题越多。感觉已经无奈了。
作者: sam7894604 时间: 2014-9-6 13:42
我在猜这命令应该是调用 msvbvm60的函数
或是 PeekMessage...
作者: sam7894604 时间: 2014-9-6 13:43
写个结构类得发两个版本...4.430 的TLL就无法调试输出
作者: 5142465 时间: 2014-9-6 13:44
gegdsgds
作者: rainshine 时间: 2014-9-6 14:04
peekmessage.我研究过
作者: q765758576 时间: 2014-9-6 18:24
q765758576
作者: windis 时间: 2014-9-8 09:52
谢谢分享。
作者: BloodyYoLmer 时间: 2014-9-10 00:55
牛逼啊
作者: 2596060677 时间: 2014-9-10 11:45
99999999999999999999
作者: yangzi88888 时间: 2014-9-13 09:48
http请求库
作者: tylong21 时间: 2014-9-13 14:44
kankan !!!!!!!!!!!
作者: lgrhpp 时间: 2014-9-15 10:57
支持一下。。。!!!!
作者: mx11 时间: 2014-9-16 22:40
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxsssssssssssssssssssssssssssssssssssssssssssssss
作者: wolis 时间: 2014-9-18 10:24
看上去好东西
作者: 6299843 时间: 2014-9-18 11:55
rainshine 一直支持你
作者: fqfq88 时间: 2014-9-19 08:06
asjlakdfefefe
作者: a837198 时间: 2014-9-19 18:50
嘿嘿,这个可以有!!...
作者: 王者天下JK 时间: 2014-9-19 21:09
支持哦
作者: whx1515 时间: 2014-9-20 10:10
好人 一生平安!!!!!!!!!!!
作者: 今晚七点半 时间: 2014-9-21 00:51
看看
作者: 米糖果 时间: 2014-9-21 02:20


作者: 放荡不羁恩恩 时间: 2014-9-21 14:18
、post、正则、执行j
作者: will3697 时间: 2014-9-21 20:16
看一看,瞧一瞧
作者: will3697 时间: 2014-9-21 20:16
看一看,瞧一瞧
作者: 东月山 时间: 2014-9-21 20:38
没啥说的先顶在下!!!!!!!!!!
作者: awlbm 时间: 2014-9-21 21:43
t73tt73t
作者: loking 时间: 2014-9-21 23:00
好东西
作者: awlbm 时间: 2014-9-22 04:30
用了后 包括例程 一运行 tc就直接挂掉。。。。
作者: awlbm 时间: 2014-9-22 07:09
本帖最后由 awlbm 于 2014-9-22 07:13 编辑
雨大姐 经测试 只支持4430tc版本 麻烦你弄一个支持4200的版本
作者: awlbm 时间: 2014-9-22 07:11
我的脚本在4330tc版本里面运行时 经常被报无缘无故不存在的错误提示!
作者: awlbm 时间: 2014-9-22 12:39
另外在多线程时 第10行有时候会报错
作者: 鱼头之王 时间: 2014-9-22 13:38
很强大,支持了
作者: rjsvictor 时间: 2014-9-22 14:54
看看!!!
作者: sd5248879 时间: 2014-9-22 17:22
我只想看源码
作者: hustmm 时间: 2014-9-22 17:51
1111111111111
作者: wanghq 时间: 2014-9-23 09:59
学习,学习
作者: q273814 时间: 2014-9-23 14:26
从来没用过 神马支持库常规库的 你有木有关互斥体的 我来用用你的
作者: 续花丶 时间: 2014-9-23 19:08
学习一下.
作者: jushunhe 时间: 2014-9-24 01:24
支持get、post、正则、执行js
作者: haizhen005 时间: 2014-9-24 07:04
看看学习一下
作者: huakeha 时间: 2014-9-24 09:14
天厉害了.....
作者: caohy 时间: 2014-9-24 15:42
123123123123
作者: winbei2010 时间: 2014-9-24 15:43
额,看看,收藏先
作者: inindexiaojie 时间: 2014-9-24 17:21
带复活集合
作者: z475547146 时间: 2014-9-25 18:38


作者: yuduo1983 时间: 2014-9-26 10:27
好啊,学习
作者: ljc1207 时间: 2014-9-27 20:34
看啊
作者: 烙之印 时间: 2014-9-29 10:36
收藏学习.
作者: 烙之印 时间: 2014-9-29 10:37
收藏学习.
作者: youss 时间: 2014-9-29 18:26
听我说是很不错的
作者: faithk 时间: 2014-9-30 22:29
看看
作者: zhangbohai 时间: 2014-10-8 10:44
非常需要,谢谢
作者: ok963963ok 时间: 2014-10-11 10:09
很强大,支持了
作者: luowen333 时间: 2014-10-13 01:46
《美丽姐脑残粉联盟》- 会长
作者: zh249883717 时间: 2014-10-14 08:03
强烈建议
作者: jxtiger 时间: 2014-10-14 10:13
的vvgefgfhefhbea
作者: xcxzj 时间: 2014-10-16 16:16
....
作者: shadow 时间: 2014-10-18 00:43
看卡啊爱爱爱
作者: jj632014819 时间: 2014-10-18 11:30
还有什么可以隐藏
作者: moxiangkelei 时间: 2014-10-18 21:49
支持下,不错哦
作者: wouinibaba1 时间: 2014-10-19 17:46
asdsgfdghjhgjkhkj;lk;l
作者: wouinibaba1 时间: 2014-10-19 17:46
asdsgfdghjhgjkhkj;lk;l
作者: adamyun 时间: 2014-10-23 09:48
看看学习下啊
作者: y三杨 时间: 2014-11-2 14:13
爱学习 爱辅助
作者: 5021214 时间: 2014-11-6 17:34
11111111111111
| 欢迎光临 TC官方合作论坛 (http://bbs.52tc.co/) |
Powered by Discuz! X3.1 |