【问题标题】:PHP Summarize any URLPHP总结任何URL
【发布时间】:2010-06-07 15:09:36
【问题描述】:

如何在 PHP 中获取任何 URL 的摘要?总而言之,我的意思类似于 Google 网络搜索结果中的 URL 描述。

这可能吗?是否已经有某种工具可以插入,这样我就不必生成自己的摘要了?

如果可能,我不想使用元数据描述。

-迪伦

【问题讨论】:

    标签: php search url summary


    【解决方案1】:

    在 Google 中显示的是(通常)META 描述标签。如果你不想使用它,你可以使用页面标题来代替。

    【讨论】:

      【解决方案2】:

      如果您不想使用元数据描述(顺便说一句,这正是它们的用途),那么您有很多研究和工作要做。本质上,您必须猜测页面的哪一部分是内容,哪一部分只是导航/绒毛。确实,谷歌就是这样。但请注意,从无用的绒毛中提取有价值的信息是他们的第一能力,并且他们已经研究和改进了十年。

      当然,您可以做出有根据的猜测(例如,“查找 ID 或类为 maincontent 的元素”并从中获取第一段),也许会没问题。真正的问题是,您希望结果有多好? (Facebook 也有类似的网站链接,有时摘要只是坚持广告是主要内容)。

      【讨论】:

      • 好吧.. 也许我会坚持使用元数据。你能给我一个有效的方法来获取标题和描述吗?我被卡住了..
      • 当然;但是我认为这是一个足够不同的主题,可以保证自己的问题-例如“使用 PHP,如何从 HTML 页面解析标题和元标记?”可能是个好标题。 (我假设你知道如何通过你的 PHP 脚本下载页面:))
      【解决方案3】:

      下面将允许您解析页面的title 标记的内容。注意:必须将 php 配置为允许 file_get_contents 检索 URL。否则,您将不得不使用curl 来检索页面 HTML。

      $title_open = '<title>';
      $title_close = '</title>';
      
      $page = file_get_contents( 'http://www.domain.com' );
      $n = stripos( $page, $title_open ) + strlen( $title_open );
      $m = stripos( $page, $title_close);
      
      $title = substr( $page, n, m-n );
      

      【讨论】:

        【解决方案4】:

        虽然我讨厌推广一项服务,但我发现:

        嵌入.ly

        它有一个 API,可以返回一个包含您需要的所有数据的 JSON。

        但我仍在寻找免费/开源库来做同样的事情。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2010-10-18
          • 2011-06-04
          • 2015-04-21
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2010-09-18
          相关资源
          最近更新 更多