我試圖獲取以下Facebook頁面的源代碼 - https://www.facebook.com/video.php?v=974372955923474&set=vb.213776828649761&type=2&theater。但它從不返回實際頁面的源代碼,而是返回形成「更新瀏覽器」頁面的源代碼,似乎我使用了錯誤的用戶代理,但我將用戶代理更改爲最新Chrome的版本,它仍然無法正常工作。嘗試使用PHP並使用時無法獲取Facebook頁面源代碼cURL
// Set curl option - following location - prevent redirects
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
// Set curl option - retransfer
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// Set curl option - no header
curl_setopt($ch, CURLOPT_HEADER, false);
// Set curl option - no body
curl_setopt($ch, CURLOPT_NOBODY, false);
// Set curl option - user agent
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36"); // Necessary. The server checks for a valid User-Agent.
// Execute CURL and get the response
$curlResponse = curl_exec($ch);
你不應該直接刮Facebook頁面 - 事實上,他們的TOS禁止這一點,當然他們也有技術措施來應對此。改用他們的API提供的功能。 – CBroe 2015-02-06 15:19:51