我正在構建一個web爬蟲。它可以找到頁面上的所有鏈接以及它們的標題和元描述等等。它確實很好。然後我寫了一個數組,它給出了我想要的鏈接的所有啓動URL。因此,如果它抓取一個鏈接,並且它的url以數組中的任何值開始,那麼這個鏈接會提供啓動的url,插入到$ news_stories中。print_r聲明似乎不起作用
唯一的問題是它似乎沒有插入到它們中。該頁面返回空白,現在它說,array_intersect語句想要一個數組,我沒有規定我有一個數組。
總之,我很努力去理解我的代碼不工作的原因以及爲什麼沒有插入想要的URL。
$bbc_values = array(
'http://www.bbc.co.uk/news/health-',
'http://www.bbc.co.uk/news/politics-',
'http://www.bbc.co.uk/news/uk-',
'http://www.bbc.co.uk/news/technology-',
'http://www.bbc.co.uk/news/england-',
'http://www.bbc.co.uk/news/northern_ireland-',
'http://www.bbc.co.uk/news/scotland-',
'http://www.bbc.co.uk/news/wales-',
'http://www.bbc.co.uk/news/business-',
'http://www.bbc.co.uk/news/education-',
'http://www.bbc.co.uk/news/science_and_enviroment-',
'http://www.bbc.co.uk/news/entertainment_and_arts-',
'http://edition.cnn.com/'
);
// BBC Algorithm
foreach ($links as $link) {
$output = array(
"title" => Titles($link), //dont know what Titles is, variable or string?
"description" => getMetas($link),
"keywords" => getKeywords($link),
"link" => $link
);
if (empty($output["description"])) {
$output["description"] = getWord($link);
}
}
$new_stories = array();
foreach ($output as $new_array) {
if (array_intersect($output['link'], $bbc_values) == true) {
$news_stories[] = $new_array;
}
print_r($news_stories);
}
嘗試使用'var_dump'而不是'print_r',它給出了更多有用的信息 – Stu
「print_r不起作用」是一個荒謬的假設。相信語言,並尋找實際的錯誤.. –