いくつかの Web サイトのデータ (コンテンツ) を取得する必要がある それらの Web サイトがリストを提供している それらを取得し、コンテンツに応じてそれらをフィルタリングする必要がある
どんなソフトウェアでもそれを行うことができますか? phpスクリプト?そうでない場合、どこからこの機能のプログラミングを開始できますか?
いくつかの Web サイトのデータ (コンテンツ) を取得する必要がある それらの Web サイトがリストを提供している それらを取得し、コンテンツに応じてそれらをフィルタリングする必要がある
どんなソフトウェアでもそれを行うことができますか? phpスクリプト?そうでない場合、どこからこの機能のプログラミングを開始できますか?
ファイル全体を文字列で返す file_get_contents() を使用してから、文字列を解析してコンテンツを抽出します。
他のオプションは、ファイル全体を取得し、AWK、SED、PERL などで処理する cURL または wget です。
ターゲットページをスクレイピングする必要がある頻度によって異なります。場合によっては PHP を使用しますが、ブラウザーからトリガーする必要があり、PHP の正規表現を覚えておくと時間がかかる場合があります。
定期的にファイルをスクレイピングする場合は、cURL/wget + sed および awk を使用した BASH スクリプトを、介入なしでバックグラウンドで cron から実行できます。
そのphpが..これがあなたを助けるかもしれないなら.. http://www.thefutureoftheweb.com/blog/web-scrape-with-php-tutorial
// get the HTML
$html = file_get_contents("http://www.thefutureoftheweb.com/blog/");
preg_match_all(
'/<li>.*?<h1><a href="(.*?)">(.*?)<\/a><\/h1>.*?<span class="date">(.*?)<\/span>.*?<div class="section">(.*?)<\/div>.*?<\/li>/s',
$html,
$posts, // will contain the blog posts
PREG_SET_ORDER // formats data into an array of posts
);
foreach ($posts as $post) {
$link = $post[1];
$title = $post[2];
$date = $post[3];
$content = $post[4];
// do something with data
}
もちろん、要件に応じて正規表現をカスタマイズする必要があります。
他にもたくさんの例があります.. http://www.google.com/search?source=ig&hl=en&rlz=&=&q=php+web+scraper&aq=f&oq=&aqi=
魔法のようなものはありません。各ページの内容が異なるためです。
皆さんが PHP について語るとき、私はこの言語についていくつかの手がかりを与えるつもりです。
curlを使用して Web ページを取得できます。コンテンツを取得したら、正規表現
を使用して解析できます。
やりたいことによっては、自分でアプリケーションを開発する必要があります。