如果您使用php cURL或file_get_contents這個特定的網站似乎阻止它給出錯誤消息。如果你設置用戶代理,它似乎是確定的。另外,我會通過php-tidy在HTML中出現錯誤的情況下運行它。
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://www.jamnews.ir/detail/News/742550');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch,CURLOPT_USERAGENT,'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.13) Gecko/20080311 Firefox/2.0.0.13');
$source = curl_exec($ch);
$config = array(
'indent' => true,
'output-xhtml' => true,
'force-output' => true,
'wrap' => 200);
$tidy = new tidy;
$tidy->parseString($source, $config, 'utf8');
$tidy->cleanRepair();
$doc = new DOMDocument();
$doc->loadHTML($tidy);
$finder = new DomXPath($doc);
$title = $finder->query('/html/head/title')->item(0)->textContent;
die($title);
給出:
جام نیوز :: JamNews - اجازه عربستان به اسرائیل برای حمله به ایران
是它究竟應該如何制定? –
@RuslanOsmanov它只是返回一個文本(頁面標題標籤的文本)。 – mehdirahimi