如何在Goutte

时间:2015-05-26 06:38:51

标签: php web-crawler guzzle goutte

我想在此page下载图片。图像源为http://i2.pixiv.net/c/600x600/img-master/img/2015/01/19/12/17/13/48258889_p0_master1200.jpg。我尝试下载它使用:

$client = new Goutte\Client ();
$client->getClient->get($img_url, array('save_to' => $img_url_save_name));

但是我失败了,然后我意识到如果我直接访问http://i2.pixiv.net/c/600x600/img-master/img/2015/01/19/12/17/13/48258889_p0_master1200.jpg,我被CDN nginx服务器拒绝了。我必须在' www.pixv.net'中访问此图片链接。页面,这意味着我的图片请求参考是' www.pixv.net'。如何在Goutte中做到这一点?

1 个答案:

答案 0 :(得分:2)

我得到了答案:

        $client->getClient()->get($img_url, ['save_to' => $img_url_save_name,
            'headers'=>['Referer'=>$src]
            ]);

实际上我可以在Goutte\Client中设置标题引用,但是没有选项可以提供保存图像的路径。所以我最终改用了Guzzle Client。