waylaidwanderer/php-rotatingproxymanager

这是一个PHP库,您可以使用它来在轮询中选择代理。

1.0.3 2016-12-10 04:46 UTC

This package is not auto-updated.

Last update: 2024-09-14 19:31:06 UTC


README

这是一个PHP库,您可以使用它来在轮询中选择代理。它使用SQLite存储代理数据,因此您可以在多个脚本中使用多个RotatingProxyManager实例,并且它仍然可以正常工作。需要安装PHP的SQLite扩展。

安装

composer require waylaidwanderer/php-rotatingproxymanager

使用

// supports proxies in the format "user:pass@ip:port" or simply "ip:port"

$list = [];
$proxiesFile = './proxies.txt';
$proxies = file($proxiesFile, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
foreach ($proxies as $proxy) {
    $rotatingProxy = new RotatingProxy($proxy);
    $rotatingProxy->setWaitInterval(2);
    $list[] = $rotatingProxy;
}

$databaseFileLocation = __DIR__;
$proxyManager = new RotatingProxyManager($list, $databaseFileLocation);
$proxyToUse = $proxyManager->getNextProxy();
var_dump($proxyToUse->getUsername());
var_dump($proxyToUse->getPassword());
var_dump($proxyToUse->getIp());
var_dump($proxyToUse->getPort());
var_dump($proxyToUse->toString()); // will output "user:pass@ip:port" or just "ip:port"