3

Amazon ページにログインする必要があります: https://sellercentral-japan.amazon.com/gp/sign-in/sign-in.html/ref=pt_login_lgin_login PHP cURL (Amazon Web サービスなし)。

これが私がそのために試したコードです:

const AMAZON_LOGIN_URL = "https://sellercentral-japan.amazon.com/gp/sign-in/sign-in.html/ref=pt_login_lgin_login";

$this->crawler = new crawler();        
// login with Amazon account
$parameters ='protocol=https&action=sign-in&email='.self::AMAZON_USER.'&password='.self::AMAZON_PWD;
$status = $this->crawler->logIn(self::AMAZON_LOGIN_URL, $parameters);

/* in crawler class */
//This is used for login.
function logIn($loginActionUrl, $parameters) {
    $strCookie = 'D:\public_html\project\cookie.txt';

    curl_setopt($this->curl, CURLOPT_URL, $loginActionUrl);
    curl_setopt($this->curl, CURLOPT_POST, 1);
    curl_setopt($this->curl, CURLOPT_POSTFIELDS, $parameters);

    curl_setopt($this->curl, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($this->curl, CURLOPT_FOLLOWLOCATION, 1);
    curl_setopt($this->curl, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);
    curl_setopt($this->curl, CURLOPT_SSL_VERIFYPEER, 0);
    curl_setopt($this->curl, CURLOPT_HEADER, 0);

    curl_setopt($this->curl, CURLOPT_COOKIEJAR, $strCookie);
    curl_setopt($this->curl, CURLOPT_COOKIEFILE, $strCookie);

    $content = curl_exec($this->curl);
    return $content;
}

応答として、ログイン ページに次のエラー メッセージが表示されます。「ログイン セッションの有効期限が切れました。もう一度サインインしてください。」また、次のメッセージも表示されます。

"見つかりません

リクエストされた URL /aan/2009-09-09/static/amazon/iframeproxy-12.html がこのサーバーで見つかりませんでした。」

Web で見つかったほとんどのソリューションを試しました。この解決策は期待できましたが、まだ機能していません: PHP Curl - Cookies の問題 必要なログイン ページの URL を変更し、他にもいくつか変更を加えましたが、次のエラーが発生します:

「この操作を実行しようとしてエラーが発生しました。15 分後にもう一度お試しください。」15分経っても同じエラーが発生します。

誰かが助けることができれば、それは助けになります。

ありがとう。

4

2 に答える 2

4

答えとしてマークするためだけに:
あなたは2つのことをしなければなりません:

  1. getメソッドを使用してサーバーにログインページを要求する
  2. 新しいセッションを使用し、入力を非表示にしてログインデータを送信する

スクリプトを表示するには:https ://stackoverflow.com/a/7532730/889678

于 2012-06-16T15:22:46.973 に答える
-1

公式の Curl API を使用してください...ここで php サンプルを参照してください http://login.amazon.com/website

于 2014-06-25T04:18:48.647 に答える