代码之家  ›  专栏  ›  技术社区  ›  Nik

如何识别curl请求

  •  2
  • Nik  · 技术社区  · 15 年前

    有没有一种方法可以在我的脚本中检测请求是来自普通的web浏览器还是来自某个脚本。我可以看到头,并可以与“用户代理和其他几个头”区别,但在curl假头可以设置,所以我无法跟踪请求。

    请建议我如何识别卷曲或其他类似的非浏览器请求。

    3 回复  |  直到 13 年前
        1
  •  11
  •   Oliver O'Neill    15 年前

    例如,点击页面太快,填写表单太快,在html文件中有一个外部源(就像通过php文件的假css文件),并检查请求的IP是否在站点的前一阶段下载了它(有点像一个反向蜜罐),但您需要排除某些IP/用户代理被阻止,否则您将阻止google的Webspider。等。

    如果curl(或任何其他自动脚本)将其头伪装成浏览器的样子,这可能是唯一的方法。

        2
  •  2
  •   Your Common Sense    15 年前

    严格地说,没有办法。
    虽然有非直接的技术,但我绝不会在公开场合讨论,尤其是在Stackoverflow这样的网站上,它鼓励屏幕抓取、内容刷自动转载和所有这些肮脏的机器人操作。

        3
  •  0
  •   malletjo    15 年前

    据我所知,你看不出浏览器中的“真实”呼叫和curl中的呼叫有什么区别。

    你可以比较头(用户代理),但它是所有我知道的。

    推荐文章