簡體   English   中英

從網頁復制文本

[英]Copy text from a webpage

假設我們有一個網站 speedywap.com

當我在瀏覽器中打開網站,然后將頁面復制到剪貼板時,當我將其粘貼到記事本(Windows)中時,只剩下文本。 除了鏈接等中的文本(即顯示在屏幕上)之外,所有代碼都被刪除。

我想用 php 做一些類似的事情,因為我正在嘗試創建一個關鍵字密度分析器。 所以我想要一些能夠只保留屏幕上顯示的網頁中的文本的東西。

我的服務器正在運行 apache、php、centos 和 mysql

<?php
$content = file_get_contents('http://speedywap.com');
echo $content;
?>

您可以使用 strip_tags 從中刪除標簽,然后只剩下文本。

對於一個非常天真的開始,你可以使用這個:

<?php

echo strip_tags(file_get_contents('http://speedywap.com'));

?>
function curl($url){
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL,$url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
    return curl_exec($ch);
    curl_close ($ch);
}

$html = curl('http://speedywap.com');

cURL 比 fgc 快很多倍。 您可以使用 strip_tags 但這並不能保證任何事情,唯一的方法是手動解析頁面,使用 str_replace、preg_replace 等。

這是你使用 strip_tags 得到的: http : //pokit.etf.ba/get/47a07bd62ea42dd3d447f060c01ccfb5.png

在此開發您的代碼 ->http://www.barattalo.it/2010/03/01/php-curl-bot-to-update-facebook-status/

如果你想花哨,請使用 file_get_contents 或 curl。

<?php
$content = file_get_contents('http://speedywap.com');
echo $content; // or analyze, or whatever

您可以使用file_get_contents('http://www.speedywap.com/'); 獲取頁面源,然后使用一些過濾器/正則表達式來獲取您需要的文本。

您還可以使用strip_tagshttp : //php.net/manual/en/function.strip-tags.php

strip_tags不會刪除或替換諸如 HTML 空間 ( &nbsp; )、 &pound; , &ndash; 等從您需要的內容中提取,如您所說,瀏覽器復制( Ctrl + ACtrl + C )並粘貼到記事本中。 您必須編寫特定的代碼來替換每個代碼,例如:

str_replace('& nbsp;',' ',$mytext); 
str_replace('& ndash;','-',$mytext);

等等來處理這些。 我需要將用戶在TinyMCE創建的內容(允許格式化文本)轉換為客戶端的純文本。 一個超越strip_tags來執行此操作的 PHP 命令會很棒,但我找不到。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM