【问题标题】:Data screaping based on Search engines基于搜索引擎的数据抓取
【发布时间】:2018-06-29 07:12:04
【问题描述】:

是否可以使用 PHP 中的搜索引擎根据关键字来废弃网页?

就像一些放置关键字时,脚本会搜索谷歌并呈现结果,然后呈现页面并废弃/提取包含匹配关键字的行?

有什么想法或图书馆可以参考吗?

【问题讨论】:

    标签: php search web-scraping scraper


    【解决方案1】:

    您可以使用 google api https://developers.google.com/custom-search/json-api/v1/overview 和相关的 php 客户端 https://github.com/google/google-api-php-client 来做到这一点。

    稍后您需要编写一个网络爬虫来下载网站(curl)并解析 html 解析器(即https://github.com/paquettg/php-html-parser)。

    但是,我不建议将 php 用于后一项任务。有更复杂的可用于 python 的抓取工具(即 BeautifulSoup 或 Scrapy),它们将使您的生活比使用 php 轻松得多。

    【讨论】:

    • 但这些工具需要提供路径或 HTML 标记来定位特定元素,但在我的情况下,我想获取数据而不管网站名称或域如何,我只需要它来查找页面具有关键字并提取包含它的行。
    • 如果您需要将行与html一起使用,那么您是正确的,strpos(..) 可以正常工作。但是如果你只需要明文,你也可以使用下面的 xpath 选择器和你选择的语言xpath("//*[contains(text(), 'KEYWORD')]")
    【解决方案2】:

    可以使用php函数调用

    file_get_contents('网址在这里');

    示例 file_get_contents('http://www.google.com');

    该函数会获取从url返回的html,然后你可以使用xpath提取html的元素来获取你想要的数据。

    您可以在下面查看示例和更多解释网址。

    https://gist.github.com/anchetaWern/6150297

    我个人对你的问题做过类似的事情,但它是在 ruby​​ on rails 中,你可以在这里探索这个项目。

    https://github.com/dvarun/gextract

    我使用的 xpath 在这里: https://github.com/dvarun/gextract/blob/master/app/jobs/fetch_keyword_job.rb

    【讨论】:

    • 如果我没有要废弃的特定网站,只想通过 Google 从任何网站获取一般数据怎么办?
    猜你喜欢
    • 2012-06-13
    • 1970-01-01
    • 2016-01-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-21
    相关资源
    最近更新 更多