【问题标题】:single page web crawl in PHPPHP中的单页网页抓取
【发布时间】:2011-06-09 22:33:58
【问题描述】:

我是 PHP 新手。有人可以帮我弄清楚如何抓取单个 html 页面并打印该页面源代码中的所有单词吗?

【问题讨论】:

  • “打印该页面源代码中的所有文字”是什么意思?
  • 我的意思是 .. 解析页面正文并打印所有长度超过 3 ..
  • 定义词?你在谈论文本中的单词吗?标签?这很混乱
  • PHP.net 有一些关于如何使用 PHP @php.net/manual/en/book.dom.php 导航 DOM 的好资料
  • 当您说“页面正文”时,您的字面意思是<body> 标签之间的内容吗? HTML 标记是否算作“所有单词”的一部分?

标签: php html webpage phpcrawl


【解决方案1】:
$words = explode(" ", strip_tags(file_get_contents("www.example.com"));
function trim_and_print(&$value) 
{ 
    trim($value);
    if(strlen($value > 3) 
        echo $value;
}

array_walk($words, 'trim_and_print');

这应该打印长度 > 3 的单词。感谢 moteutsch for file_get_contents

【讨论】:

  • 为什么不使用file_get_contents
  • 当我将 echo $buffer 替换为 echo strip_tags($buffer);我得到空页作为输出。但我需要源文本中的单词作为输出。
【解决方案2】:

您的问题不是很清楚,但您需要下载页面(使用 cURL 或 PHP 的文件函数)并以某种方式处理文件。这是一个基本的解决方案:

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-06-18
    • 1970-01-01
    • 2018-10-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多