0

我正在尝试使用 Guzzle 登录亚马逊,但我没有运气。这是我的代码:

$client = new \GuzzleHttp\Client(['cookies' => true]);

$response = $client->request('POST', 'https://www.amazon.com/gp/sign-in.html', [
    'form_params' => [
        'ap_email' => "email@gmail.com",
        'ap_password' => "12345678"
    ]
]);

当我得到它的响应时,$response->getBody()->getContents()它在成功登录时返回登录页面而不是重定向页面。

4

1 回答 1

1

在您的情况下,最好使用网络刮刀,例如Goutte。它使用浏览器模拟用户,因此您无需担心很多事情(例如 CSRF 保护和其他隐藏字段)。

您可以将它与 Guzzle 一起用作驱动程序,但某些网站可能需要 JavaScript(我不确定 Amazon)。然后你必须使用真正的浏览器或 PhantomJS(一种无头 Chrome)。

于 2016-07-26T06:49:37.437 回答