jtanjung / proxier
该软件包最新版本(v0.4-beta)没有提供许可信息。
PHP免费代理种子工具
v0.4-beta
2021-06-10 21:27 UTC
Requires
- jtanjung/pehape: ~v1.6-beta
README
PHP免费代理种子工具
安装
通过Composer
composer require jtanjung/proxier
需求
此软件包需要从jtanjung/pehape服务中获取服务,该服务包含多个webdriver可执行文件,这些文件是WebPageService运行其功能所需的。至于默认的webdrivers,请参考以下3种不同的浏览器
- Chrome v90.x
- Firefox v75.0
- Opera v75.x
链接
对于webdriver的其他版本,请参考以下链接
注意:浏览器及其驱动程序的版本必须兼容!
使用方法
种子代理
从免费代理网站获取代理IP
use Proxier\ProxySeeder; $seeder = new ProxySeeder(); $proxy = $seeder->FreeProxyListNet(); $proxy->SetTimeOut(60); $proxy->Seed();
获取随机代理
从缓存中获取随机代理信息
use Proxier\ProxySeeder; $seeder = new ProxySeeder(); // Try to get random proxy from the cache echo "Get a random proxy....\n"; // Call Get function to get a random entry, or pass md5 value of IP:Port $proxy = $seeder->Seed()->Get(); echo json_encode($proxy) . "\n";
使用事件监听器
通过将事件监听器绑定到种子器,轻松编写代码
use Proxier\ProxySeeder; $seeder = new ProxySeeder(); $seeder->Bind('OnLoading', function(){ echo "Start seeding, please wait...\n"; }); $seeder->Bind('OnSeeding', function($value){ echo json_encode($value) . "\n"; // You can put block code here to insert the new proxy to database /** ->Save([ * "ip" => $value->IP, * "port" => $value->Port * "location" => $value->Location * ]); */ }); $seeder->Bind('OnComplete', function($value){ echo "\nComplete...\n"; echo $value->count() ." proxy found."; }); $seeder->Bind('OnError', function($msg, $exc){ echo "Message = '$msg'\n"; // throw $exc; });
更多选项
使用ProxyTester测试代理
$tester = new Proxier\ProxyTester(); $tester->SetProxy("<IP>", "<PORT>"); $tester->Bind('OnError', function($msg, $exc){ echo "Message = '$msg'\n"; // throw $exc; }); $tester->Run();
更多示例请见此处