0


0

SimpleHtmlDOM + Loginを使用しますか?

SimpleHtmlDOM PHPを使用して、お気に入りのWebページの一部をスクレイピングしています。 ただし、これらのページの中には、本当に気になる情報に到達する前にログインする必要があるものがあります。 ページにアクセスする前にユーザー名とパスワードを入力する必要があるページにアクセスするためにこのライブラリを取得する方法(または可能かどうか)は誰にもわかりますか? これまでにやったことはすべて、次のようなものから始まります…​

$html = file_get_html('http://www.google.com/');

2 Answer


2


同一の認証メカニズムを使用するサイトはほとんどないため、常にサイトを認証する方法はありません。

最善の策は、http://us2.php.net/manual/en/book.curl.php [cURL]を使用して、スクレイパーを実際のブラウザーのように見せることです。 これは、http://us2.php.net/manual/en/function.curl-setopt.php [cookiesを使用](ページで「cookie」を検索し、cookieファイル/ jarを使用することをお勧めします)と保存を意味しますログインフォームに移動し、正常に送信した後、引き続き「ブラウザ」セッションを使用してスクレイピングを実行します。

この方法でサイトがスクレイプされることを気にしないようにしてください。 発見された場合、サイト所有者がスクレイピングを嫌う度合いに応じて、サイトから禁止される場合があります。


0


simplehtmldomの別の問題は、domへのエラーによりパーサーのエラーが発生し、オブジェクトがnullになるため、domが正しい必要があることです。