我在PHP中使用cURL來獲取網頁內容,它的工作效果很好。但是我的程序現在要求我只從目標站點獲取純文本,而不是HTML。我已經廣泛地尋找這個,但沒有人似乎有答案。我也嘗試在我的cURL選項中設置CURLOPT_TRANSFERTEXT=1
,但這似乎對結果沒有影響。PHP cURL獲取明文
任何想法爲什麼會發生這種情況?
我在PHP中使用cURL來獲取網頁內容,它的工作效果很好。但是我的程序現在要求我只從目標站點獲取純文本,而不是HTML。我已經廣泛地尋找這個,但沒有人似乎有答案。我也嘗試在我的cURL選項中設置CURLOPT_TRANSFERTEXT=1
,但這似乎對結果沒有影響。PHP cURL獲取明文
任何想法爲什麼會發生這種情況?
確保您有以下:
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
的curl_exec
返回值應該是隨後的數據。
我認爲這是你在找什麼:
<?
$address = file_get_contents('http://www.thesite.com/file.html');
echo $address;
$file = file_get_contents('./file.txt', true);
or
$file = file_get_contents('./file.txt', FILE_USE_INCLUDE_PATH);
?>
其實我不喜歡這樣獲得另一頁的內容。
<?php
function curl_get_file_contents($URL)
{
$c = curl_init();
curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($c, CURLOPT_URL, $URL);
$contents = curl_exec($c);
curl_close($c);
if ($contents) return $contents;
else return FALSE;
}
echo curl_get_file_contents("http://www.php.net");
?>
但它返回給我的全部內容。
你的意思是說你想剝離頁面上的所有HTML標籤嗎?可以使用strip_tags()
function。
這是我目前所做的獲取數據。我只想要純文本。不是HTML,因爲它提供了 – Alan 2011-03-03 02:01:02
@Alan:如果您不希望HTML標記在打印到頁面時呈現,請使用[htmlentities](http://php.net/htmlentities)。如果您不想使用HTML標籤期間,請使用[strip_tags](http://php.net/strip_tags)。 – 2011-03-03 11:17:23