私はフォーラムのコンテンツ収集アプレットを作成しています。
これが私が最初に Web ページの収集に挑戦した方法です
if ($_GET[id]<=130000 && $_GET[id]){
$url="http://bbs .misranim .com/thread-".$_GET[id]."-1-1.html";
ただし、便宜上、次のような while ループを使用しました
$p=0;
while($p<= 130000){
$url="http://bbs.misranim.com/thread-".$p."-1-1.html";
$p++; 問題は、空の削除されたページ コンテンツもデータベースに収集します
if ($_GET[id]<=130000 && $_GET[id]) を使用すると、削除された空のページに遭遇すると、そのページに直接ジャンプします
を使用します。 while または for ループ この問題は、削除された空のページに遭遇したときに発生します
写真: 空のページに遭遇した場合は、前のページのコンテンツをそのページにコピーするだけです。たとえば、13 番目の投稿にはコンテンツがありますが、 14 番目から 17 番目の投稿は削除され空になっています。これに 13 個の投稿の内容が追加され、残りも同様になります。
if ($_GET[id]<=130000 && $_GET[id]) を使用する場合、削除された空のページに遭遇すると、そのページに直接ジャンプします
まだいくつかの投稿があります13投稿以降はコンテンツがないので、このように22投稿に直接ジャンプします
この効果が欲しい
私は
if (strlen($txt) > 5)//コンテンツが多くて5文字が集まっていますデータベースに追加します
{
$db->insert("INSERT INTO bbs_caiji (col_date,title,txt,url,type,source) VALUES ('".$col_date."','".$title1."', '".$txt. "','".$url."','BBS','misranim')");
}
while ループと for ループを使用するとこの問題が発生するのはなぜですか?
ディスカッションに返信 (解決策)
あなたが指摘した現象は起こらないはずです
コードが不完全です、提供されたコードを見てください? はい? ?いくつかの。
各サイクルの後に $txt をクリアします。