我想編寫一個連接到維基百科URL並獲取維基百科文章內容的php函數。我使用cURL與PHP。我指的是這個blog。與維基百科頁面捲曲php
問題是:該函數沒有看到url的內容並返回錯誤。
這是我的代碼:
<?php
$wikipediaURL = 'http://fr.wikipedia.org/wiki/Megadeth';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $wikipediaURL);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_USERAGENT, 'Le blog de Samy Dindane (www.dinduks.com)');
$resultat = curl_exec ($ch);
curl_close($ch);
$wikipediaPage = new DOMDocument();
$wikipediaPage->loadHTML($resultat);
foreach($wikipediaPage->getElementsByTagName('div') as $div){
if($div->getAttribute('id') == "bodyContent"){
$description = '<p>' . $div->getElementsByTagName('p')->item(0)->nodeValue. '</p>';
$description = preg_replace('/\[[0-9]*\][,]|\[[0-9]*\]/', '', $description);
echo $description; }}
?>
這是錯誤消息:
警告:DOM文檔:: loadHTML():作爲輸入 c供給空字符串:\瓦帕\ WWW \ Project1 \ wiki5.php 12行
我使用其他代碼示例具有相同的功能,它不能只與維基百科url一起使用。
請任何幫助! 感謝
你不檢查,如果捲曲電話竟是成功。檢查[我的答案的另一個問題](http://stackoverflow.com/questions/8227909/curl-exec-always-returns-false/13311209#13311209)找出如何診斷呼叫。 –
你沒有使用'wikipedia' api。我認爲他們阻止空白請求。 https://www.mediawiki.org/wiki/API:Main_page – chris85
不會file_get_contents的作品? $ wikipediaURL ='http://fr.wikipedia.org/wiki/Megadeth'; $ tmp = file_get_contents($ wikipediaURL); echo $ tmp; – SamyQc