【问题标题】:Crawling AJAX requests抓取 AJAX 请求
【发布时间】:2014-11-03 14:02:03
【问题描述】:

我有一个带有下拉列表的 ASP.NET MVC 网站,当用户在第一个下拉列表中选择一个选项时,其他下拉列表使用 AJAX 调用填充。根据日志,爬虫尝试以正常方式访问这些 AJAX 方法,因此我的应用程序会记录错误。我将这些 AJAX 方法设置为不可抓取,这意味着当请求不是 AJAX 调用时我返回 404。这是最好的方法吗? 另一方面,我有一个包含多个步骤的页面,这意味着用户填写表单然后进入第二步。每次用户填写表单时,我都会执行 POST AJAX 请求并保存输入数据。我应该如何处理这种情况?

【问题讨论】:

    标签: ajax seo web-crawler


    【解决方案1】:

    将您不想抓取的网址添加到robots.txt。

    如果您在GET 表单中提供链接,抓取工具将尝试抓取它。返回 404 在技术上是不正确的 - 它确实可以阻止爬虫索引页面!

    考虑返回500 Internal Server Error 或501 Not Implemented。

    【讨论】:

    • 但我确实希望爬虫爬取所有页面,但在这些页面中有我不希望他们调用的 AJAX 方法,他们正在调用它们。这就是我返回 404 的原因。任何 5** 错误都意味着服务器在处理请求时出现问题,而事实并非如此。当爬虫尝试调用标记为仅 POST 的方法时,也会发生类似的情况。
    猜你喜欢
    • 2021-03-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-27
    • 2016-01-20
    • 2019-04-07
    • 1970-01-01
    相关资源
    最近更新 更多