コードをコピー コードは次のとおりです:
//PHP シンプル HTML Dom クラス ライブラリ ファイルをインクルード
include_once ('./simplehtmldom/simple_html_dom.php');
//HTML を収集
function getwebcontent($url){
$ch =curl_init(); = 10;
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout); ch, CURLOPT_FOLLOWLOCATION , 1);
$contents = trim(curl_exec($ch));
return
}
// タイトルと URL を取得します
$string =
getwebcontent('http://www.babytree.com/learn/zhunbeihuaiyun/jijibeiyun/2');
//通常のマッチング
タイトルとアドレスを取得します
preg_match_all ("/(.*)/",
$ string, $out , PREG_SET_ORDER);
foreach($out as $key => $value){
$article['title'][] = $out[$key][2] ;
$article['link'][] = "http://www.babytree.com/learn/article/".$out[$key][1];
}
// URL に従って記事の内容を取得します
foreach($article['link'] as $key=>$value){
$html = file_get_html($value);
$div = $ html->find ('div[id=pagenum_0]');
$article[content][] = $div[0]->innertext;
}
//タイトルのトランスコーディング-- -実際に使用 このステップは現時点では必要ありません - そもそも utf8 を使用する必要があるためです
//実際にはトランスコーディングせずにファイルとして保存することはできません
foreach($article[title] as $key=>$value){
$article[title][$key] = iconv('utf-8', 'gbk', $value);//トランスコーディング
}
//ファイルに保存
$num = count ($article['title']);
for($i=0; $ifile_put_contents("{$article[ title][$i]}.txt" , $article['content'][$i]);
}
/*本当は12時前に投稿したかったのですが。 。でも見てください、もう3時半です。 。 。 昨日のことだとしても
本来、記事の内容を取得するには正規表現を使うのが一番早くて良い方法です
しかし、正規表現は良いのですが、正規表現は本当に難しいです。そこで少し調べてみたところ、
インターネット上の多くの人が PHP Simple Dom を使用していることもわかりました。効率は少し遅くなりますが、それでも効果は良好です。
クラス ライブラリを含めるのに約 7/8 かかります。ファイルを txt ファイルに書き込むまでの秒数は、特に記事のコンテンツを取得するための通常のルールに使用できます。
少し調べてください*/
?>