1

PhantomJS的文档确实展示了如何使用代理。但是,当使用PHP PhantomJS的库时,如何在 PHP 中使用?

就此而言,如何使用任何 PhantomJS 插件?

我目前正在使用 CURL 执行此操作以使用代理:

curl_setopt($curl, CURLOPT_PROXY, "http://$proxy:$port");
curl_setopt($curl, CURLOPT_PROXYUSERPWD, "$username:$password");

我想用 PhantomJS 做同样的事情。我已经正确安装和配置了它,这个例子有效(PHP PantomJS 自己的例子)。

use JonnyW\PhantomJs\Client;

$client = Client::getInstance();
$request  = $client->getMessageFactory()->createRequest();
$response = $client->getMessageFactory()->createResponse();
$request->setMethod('GET');
$request->setUrl('http://jonnyw.me');

$client->send($request, $response);
print_r($response);

代理信息在哪里?

谢谢。我对 PhantomJS 很陌生。

4

1 回答 1

3

来自官方PHP PhantomJS文档,“PhantomJS 选项”部分。您可以像这样添加运行 PhantomJS 二进制文件的选项:

<?php

    use JonnyW\PhantomJs\Client;

    $client = Client::getInstance();
    $client->getEngine()->addOption('--load-images=true');
    $client->getEngine()->addOption('--ignore-ssl-errors=true');

所以你会像这样添加代理信息:

    $client->getEngine()->addOption("--proxy=$proxy:$port");
    $client->getEngine()->addOption("--proxy-auth=$username:$password");

还有一个代理类型选项(http|socks5|none):

    $client->getEngine()->addOption("--proxy-type=socks5");
于 2016-02-08T03:03:35.027 回答