MENU

PHP PhantomJS库中使用代理

July 25, 2020 • 已被 213 位童鞋围观过 • 代码分享

我想用PhantomJS做一些事情。我已经正确安装和配置了它,并且此示例有效(PHP PantomJS自己的示例)。

$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 的文档确实显示了如何使用代理。但是,当使用PHP PhantomJS中的库时,如何在PHP中使用代理?

从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");

部分教程 : segmentfault

官方文档 http://jonnnnyw.github.io/php-phantomjs/

Last Modified: September 28, 2023