【问题标题】:Figure out if two URLs navigate to the same page确定两个 URL 是否导航到同一页面
【发布时间】:2014-12-03 01:53:31
【问题描述】:

这是一个假设性问题。没有任何代码。

假设您应该确定两个 URL 是否导航到同一页面。您必须以编程方式执行此操作。仅仅扫描 URL 是不够的,也许其中一个有一个锚链接,该链接导航到同一页面但不同的部分。或者,在 url 上可能有一个 ref=...,它只是用于监控后端的引荐来源。

一种可能的解决方案是请求两个 URL 的内容并比较 HTML 结果,但如果您必须对许多不同的 URL 多次执行此操作,则成本很高。有没有更好的解决方案?

谢谢

【问题讨论】:

    标签: url networking curl request server


    【解决方案1】:

    当然,通过读取服务器在每次请求后发送的 HTTP 响应标头。

    当您被重定向时,服务器会以状态码 302 进行响应。200 是一切正常时的代码,最受欢迎的是 404,未找到。

    查看Wikipedia page 了解更多关于 302 状态代码的信息,查看this one 了解完整列表。

    【讨论】:

    • 当我提出请求时,我只能得到 200 个 OK 代码。 302 Found 不存在于响应标头中。无论哪种方式,我都可以比较一个“内容长度”字段。这样会更快、更高效。
    • 如果页面通过javascript重定向你,你可以从正文中提取URL。这可能是一个非常具体的实现。您需要/可以做很多事情,但在我看来,这是您需要研究的一个边缘案例,您可以使用您拥有的资源。
    猜你喜欢
    • 2017-02-13
    • 1970-01-01
    • 2020-12-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-27
    • 1970-01-01
    相关资源
    最近更新 更多