私は、不動産業者がクライアントのオンラインプレゼンテーションを作成し、zillowの所有サイトであるstreeteasy.comというウェブサイトの例を使用してサイトを作成しています。閉鎖した不動産の売却価格を見るためには、ログインする必要があることを除いて、私が望むすべてを首尾よく掻き集めることができます。ログインは、私が知る限りはセキュリティが非常に低く、ログインすると10年間Cookieを設定します。投稿データと投稿URLを取得するためにChrome開発者ツールを使用しました。cURLログインStreeteasy(zillowの所有サイト)に関する問題
ページがきれいに表示されていますが、最終販売価格を確認するには「登録が約5週間前に完了したことを確認する」と表示されます。ログインすると、メッセージが異なります。私はまだこのコードを動作させることができませんし、なぜ私は考えていません。 cookie.txtファイルはアクセス許可の問題ではないので、WAMPでテストしています。私はちょうど私のブラウザのクッキーを使って自分のクッキーファイルを作成しようとしましたが、ページにアクセスするだけでもまだ運がありませんでした。
$url = "http://streeteasy.com/sale/1253471";
$login_url = 'https://streeteasy.com/nyc/user/sign_in';
$data = 'utf8=%E2%9C%93&authenticity_token=MYCz6A5PK%2B3I3N%2BgHekaNc4IuQEruBrCPBjSxm1B9dg%3D&do=login&return_to=http%3A%2F%2Fstreeteasy.com%2F&origin=&page_category=&page_type=&boundary=&label=&remember=true&return_to_save_search=&login=john%40telesh.com&password=dman4578';
login($login_url,$data);
echo grab_page ($url);
function login($url,$data){
$fp = fopen("cookie.txt", "w");
fclose($fp);
$login = curl_init();
curl_setopt($login, CURLOPT_COOKIEJAR, "cookie.txt");
curl_setopt($login, CURLOPT_COOKIEFILE, "cookie.txt");
curl_setopt($login, CURLOPT_TIMEOUT, 40000);
curl_setopt($login, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($login, CURLOPT_URL, $url);
curl_setopt($login, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);
curl_setopt($login, CURLOPT_FOLLOWLOCATION, TRUE);
curl_setopt($login, CURLOPT_POST, TRUE);
curl_setopt($login, CURLOPT_POSTFIELDS, $data);
return curl_exec ($login);
}
function grab_page($site){
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);
curl_setopt($ch, CURLOPT_TIMEOUT, 40);
curl_setopt($ch, CURLOPT_COOKIEFILE, "cookie.txt");
curl_setopt($ch, CURLOPT_URL, $site);
return curl_exec ($ch);
}
あなたは、実際のログイン資格情報を投稿するもしかして? – scoopzilla
ログインは機能しますか?出力をチェックしましたか?また、両方の関数はcurl_init()を持ち、1つしか持たず、引数としてcurlを渡すか、グローバルとして設定します。そして、各関数での復帰後に余分なコードが必要なく、決して実行されません。 – sadlyblue
私はそのログイン情報を気にしません、それを保護する理由はありません、それを公開することによって何も得られませんが、見ていただきありがとうございます。 –