代理智能提取模块v5.3
设计者:鱼刺
功能强大 通用 易上手 你所想到的我都做到了
免责声明:莫要将本模块用于违法或商业用途,否则照成的一切后果自负。与作者(鱼刺)无关。
--------------------------------------------
更新说明:
v5.3(2020-11-26)
*增加新函数 置代理过滤重复回调() 用于扩展支持过滤重复代理
*新增了两个例程`扩展例程_过滤重复代理_初级.e`,`扩展例程_过滤重复代理_高级.e`
*略微提升了提取和验证速度(优化了一下解析和链接零件的参数)
*修改了版权说明文本(比如移除了QQ)
v5.2.3(2020-07-09)
*修正了使用函数修改配置项时 一些留空参数失效的问题
v5.2(2020-06-19)
*修正了因修改了代理提取阀值而导致二次创建代理提取架构后无法正常提取的问题
*创建代理提取架构时多了一个参数 可控制创建后是否立即进行提取(详细说明请看参数注释)
v5.1(2020-06-09)
*换了一批零件 降低了内存占用
*支持了设置最多5个提取地址
*优化了代理提取触发判定
v5.0(2019-08-21)
*解决了多次频繁创建销毁代理提取模块后 出现一直卡在销毁上的问题
*增加了两个新的函数`测试提取()` `测试验证()` '//详情请查看`例程_测试代理提取验证.e`
*新增了一个例程`例程_测试代理提取验证.e`
*修正了部分情况下使用函数`置代理提取参数` `置代理验证参数` 调整配置无效的问题
v4.8(2019-08-03)
*新增配置参数`验证自定义请求方法`用于控制验证时用GET还是POST方式或者其他方式
*新增配置参数`验证最大并发线程数`用于控制验证代理时的最大并发线程数(默认=200 可设置为5-400之间)
*没有什么其他改进和BUG修正
--------------------------------------------
简单使用流程:
1. (编辑配置)
1.1 编辑运行目录下的`Config_Proxy.ini`填写提取和验证参数并保存
1.2 如果程序目录下没有`Config_Proxy.ini`这个文件 请调用一次`代理智能提取_创建()`会自动生成在运行目录下
1.3 你也可以用代码来配置这些信息 直接调用 `代理智能提取_置代理提取参数()` `代理智能提取_置代理验证参数()` `代理智能提取_置代理生命值()` `代理智能提取_置代理最长存活时间()`
2. (创建和获取状态)
2.1 在执行工作前调用一次 `代理智能提取_创建()` (比如: `启动按钮_被单击`)
2.2 你可以搞个时钟/定时器来刷新代理智能提取模块的工作状态
2.3 当你打算结束工作/工作完毕时记得执行 `代理智能提取_销毁()`
3. (提取代理)
3.1 当你需要用代理时 直接调用`代理智能提取_获取代理()`即可得到一条代理
3.2 没错 你可以在任意环境下调用`代理智能提取_获取代理()` (比如:在并发线程中调用)
4. (总结)
如果你已修改好了提取配置 你其实可以很轻松的使用它
只要先创建 然后只管在任意线程获取代理即可 代理快不够了会自动提取补充
就像下面这样
创建()
获取代理()'//线程A
获取代理()'//线程B
获取代理()'//线程C
...
销毁()
--------------------------------------------
Config_Proxy.ini 配置说明:
触发补充阀值 : 当前剩余代理小于这个数值会触发自动提取并验证补充代理(0=自动(本次提取数量\5+5且>=5))
提取地址1 : 用于提取代理的API地址
提取地址2 : 支持多个代理提取地址
提取地址3 : 留空为不启用
提取地址4 : 如果设置了多个提取地址 内部是轮流调用
提取地址5 : 目前最多可同时设置5个提取地址
提取分隔符 : 提取后用这个分隔符来分割成多条 默认=\\r\\n(换行符) (本参数也支持正则匹配)
提取是否正则分割 : 是否使用正则匹配 1=使用正则匹配(正则必须包含两个子匹配项 1为地址 2为端口) 0=使用分割文本匹配
提取是否UTF8解码 : 提取代理返回的网页内容是否进行UTF8解码 1=解码 0=不解码(默认)
提取是否禁止重定向 : 是否禁止网页302/301重定向 1=禁止重定向 0=允许重定向(默认)
提取自定义附加协议头 : 提取代理时附加的HTTP协议头
2022-07-29 19:52:10
1.81MB
模块控件源码
1