【问题标题】:Scanning a whole website's pages for a piece of code [duplicate]扫描整个网站的页面以获取一段代码[重复]
【发布时间】:2013-06-19 15:34:14
【问题描述】:

我正在运行一项服务,其中涉及网站所有者必须将一段代码放到他们的网站上。它在哪个页面上并不重要。

我正在寻找一种使用 PHP 来检查给定网站 URL 的页面以获取一段代码的方法。谁能指出我正确的方向?

我知道如何扫描给定 URL 的页面,但我需要一种使用 PHP 收集所有页面 URL 并在每个页面中搜索一行代码的方法。

谢谢! :)

【问题讨论】:

    标签: php


    【解决方案1】:

    这可能就像cURL 获取 HTML 一样简单,strpos() 可以查看该特定字符串是否存在于 HTML 中。

    但是,这确实存在问题!如果您要求人们添加链接或其他内容,稍后只需设置display:none 即可使用他们的 CSS 轻松隐藏该元素。为了解决这个问题,您需要更高级的东西来实际检查项目的存在和可见性。 PhantomJS 可以用于此。

    现在,如果人们想要使用缩小器或以其他方式修改您的 HTML,同时保持添加链接的精神,会发生什么?我建议不要寻找确切的 HTML,而是检查您真正要寻找的内容...例如指向您网站的反向链接。在任何情况下,您都可以使用 DOM 解析器来帮助解决这个问题。

    【讨论】:

      【解决方案2】:

      您想要解析每个页面的 DOM,搜索任何链接,然后扫描这些 URL。请务必跟踪您已经扫描了哪些页面,以及您需要扫描哪些页面,否则您将陷入无限循环。您还应该设置一个延迟,否则您很容易通过直接发送数百个请求而使服务器不堪重负。

      SimpleHTMLDom 给出了一个解析链接的例子。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-05-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-02-27
        • 2011-02-19
        • 2014-09-19
        相关资源
        最近更新 更多