0

如果有人能帮我解决这个问题,那就太好了。这就是我到目前为止所拥有的。当我运行它并回显 dom 内容时,我仍然会看到登录页面。但我看不出我做错了什么。

    $target_url = "https://secretsales.com/";
    $fields = array('email' => 'abc', 'password' => '123');
    $postFields = http_build_query($fields, '', '&');

    // make the cURL request to $target_url
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_USERAGENT, $userAgent);
    curl_setopt($ch, CURLOPT_URL, $target_url);
    curl_setopt($ch, CURLOPT_FAILONERROR, true);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
    curl_setopt($ch, CURLOPT_AUTOREFERER, true);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_TIMEOUT, 10);
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $postFields);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    $html = curl_exec($ch);

    // parse the html into a DOMDocument
    $dom = new DOMDocument();
    @$dom -> loadHTML($html);

    // grab all the on the page
    $xpath = new DOMXPath($dom);

    echo $dom->saveHTML();
4

1 回答 1

0

添加这个:

curl_setopt ($ch, CURLOPT_COOKIEJAR, dirname(__FILE__) . "/tmp/cookies.txt");
curl_setopt ($ch, CURLOPT_COOKIEFILE, dirname(__FILE__) . "/tmp/cookies.txt");

这会将 cookie 存储到指定的目录中,因此您可能必须创建该目录。

于 2013-02-09T16:34:21.547 回答