2015-07-21 88 views
1

我使用了幾種方法在php中獲取aptoide.com的html內容。如何獲取特定網址的完整html內容?

1)file_get_contents();

2)readfile();

3)捲曲爲PHP函數

function get_dataa($url) { 
    $ch = curl_init($url); 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
    curl_setopt($ch, CURLOPT_BINARYTRANSFER, true); 
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); 
    curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (compatible; Konqueror/4.0; Microsoft Windows) KHTML/4.0.80 (like Gecko)"); 
    $data = curl_exec($ch); 
    curl_close($ch); 
    return $data; 
} 

4)PHP簡單的HTML DOM解析器

include_once('simple_html_dom.php'); 
$url="http://aptoide.com"; 
$html = file_get_html($url); 

但他們都得到aptoide.com的空輸出 有沒有wa Ÿ獲取該網址的完整HTML內容?

+0

簡單'回聲的file_get_contents(「http://www.aptoide.com/」);'是可以正常使用的我。你的問題可能是別的。你對其他網址有這個問題嗎?也許'aptoide.com'已經阻止了您的IP。 – Sky

+1

有沒有辦法改變我的捲曲請求的IP? –

回答

0

echo file_get_contents('http://www.aptoide.com/');工作正常,我。

所以有可能aptoide.com已被封鎖。如果你想改變你的IP(如你在評論說),你必須使用:

$url = 'http://aptoide.com.com/'; 
$proxy = '127.0.0.1:9095'; // Your proxy 
// $proxyauth = 'user:password'; // Proxy authentication if required 

$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL,$url); 
curl_setopt($ch, CURLOPT_PROXY, $proxy); 
//curl_setopt($ch, CURLOPT_PROXYUSERPWD, $proxyauth); 
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
curl_setopt($ch, CURLOPT_HEADER, 1); 
$curl_scraped_page = curl_exec($ch); 
curl_close($ch); 

echo $curl_scraped_page; 
0

使用捲曲get_dataa功能與該行補充說:

curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); 

因爲頁面重定向到www.aptide.com 全功能:

function get_dataa($url) { 
    $ch = curl_init($url); 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
    curl_setopt($ch, CURLOPT_BINARYTRANSFER, true); 
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); 
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); 
    curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (compatible; Konqueror/4.0; Microsoft Windows) KHTML/4.0.80 (like Gecko)"); 
    $data = curl_exec($ch); 
    curl_close($ch); 
    return $data; 
} 
+1

沒有工作。似乎他們已經阻止了捲曲或使用某些方法 –

相關問題