[英]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_tags
: http : //php.net/manual/en/function.strip-tags.php
strip_tags
不会删除或替换诸如 HTML 空间 (
)、 £
, –
等从您需要的内容中提取,如您所说,浏览器复制( Ctrl + A , Ctrl + C )并粘贴到记事本中。 您必须编写特定的代码来替换每个代码,例如:
str_replace('& nbsp;',' ',$mytext);
str_replace('& ndash;','-',$mytext);
等等来处理这些。 我需要将用户在TinyMCE
创建的内容(允许格式化文本)转换为客户端的纯文本。 一个超越strip_tags
来执行此操作的 PHP 命令会很棒,但我找不到。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.