我有一个问题 - 我正在使用 CURL 和 PROXY。我正在从付费网络服务获取代理地址列表。该列表如下所示(示例):
123.456.789.012:1234
123.456.789.012:1234
123.456.789.012:1234
123.456.789.012:1234
123.456.789.012:1234
123.456.789.012:1234
123.456.789.012:1234
假设上面提到的列表可以在这里找到:http ://example.com/list_with_the_proxy
我的 PHP 代码如下所示:
<?php
$url = 'http://connect.to.another.example.net/'; //I want to open this url using one of the proxy address from the list
$proxy_url = 'http://address.of.proxy.example.org';
function RandomLine($filename) {
$lines = file($filename) ;
return $lines[array_rand($lines)] ;
}
$random_proxy = RandomLine($proxy_url);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HTTPPROXYTUNNEL, 1);
curl_setopt($ch, CURLOPT_PROXY, $random_proxy);
$data = curl_exec($ch);
curl_close($ch);
echo $data;
?>
我注意到一些问题 - 有时某些代理不可用,并且网站正在加载和加载和加载......如果网站加载时间过长,是否有可能重新加载脚本并获取新的随机代理?例如,如果代理在 5 秒内没有响应,脚本会再次加载吗?