AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 7178
Accepted
Randin
Randin
Asked: 2009-05-12 16:10:59 +0800 CST2009-05-12 16:10:59 +0800 CST 2009-05-12 16:10:59 +0800 CST

如何避免被刮?

  • 772

我们有一个可搜索的数据库(DB),我们将结果限制为每页 15 个,并且只有 100 个结果,但仍然让人们试图抓取该网站。

我们正在禁止访问速度足够快的网站。我想知道我们是否还有什么可以做的。Flash渲染结果可能吗?

database scraping
  • 7 7 个回答
  • 996 Views

7 个回答

  • Voted
  1. John McC
    2009-05-12T18:28:12+08:002009-05-12T18:28:12+08:00

    既然显然对您的数据库有需求,您是否考虑过扭转它并提供刮板想要的东西?与爬虫建立业务联系并鼓励适当使用 API?

    • 13
  2. cletus
    2009-05-12T16:36:07+08:002009-05-12T16:36:07+08:00

    在如何阻止脚本编写者每秒数百次抨击您的网站中有一些很好的信息?

    • 7
  3. Best Answer
    Ivan
    2009-05-12T16:15:59+08:002009-05-12T16:15:59+08:00

    您可以通过 AJAX 检索记录并为 AJAX 调用使用身份验证 ID(如 API 密钥)来使其变得更加困难。

    当然,您可以通过读取 ID 然后使用它发出 AJAX 请求来解决这个问题。

    正如您所指出的那样,使用 Flash 渲染是一种替代方法(尽管仍然不是 100% 不可抓取),就像在 PDF 中渲染一样。

    • 6
  4. Portman
    2009-05-12T18:50:31+08:002009-05-12T18:50:31+08:00

    没有任何技术解决方案可以防止有动机的个人抓取您可公开访问的内容。

    但是,您可以通过以下方式合法保护您的知识产权:

    • 确保您的网站具有明确标记的版权
    • 在页脚中发布明确禁止抓取的服务条款
    • 考虑将数字水印嵌入到您网站的所有内容中。不要忘记文本也可以加水印!
    • 4
  5. tomjedrz
    2009-05-12T19:27:37+08:002009-05-12T19:27:37+08:00

    如何在给定的时间段内设置身份验证(可能还有验证码)、跟踪使用情况以及限制对某些记录或搜索的访问?

    • 2
  6. Brian Lyttle
    2009-05-12T16:38:23+08:002009-05-12T16:38:23+08:00

    您可能会发现,当您应用不同的技术时,刮板会改善它们的效果。也许有一种方法可以分析抓取并呈现验证码或其他干扰的用户的行为?也许您可以在一段时间内将结果限制为较小的数字,以迫使刮板等待 10 天。如果他们之间没有登录,那么假设他们是 scapers?

    无论你做什么,一定要混合你的技术,让它们更长寿。

    • 1
  7. Bruce McLeod
    2009-05-12T22:07:22+08:002009-05-12T22:07:22+08:00

    您需要考虑刮板可能没有使用您的网页和表单,它们可能只是在 http 级别调用您的网站。

    我认为最好的解决方案是在 IP 地址请求超过某个请求阈值后抛出一个 catchpa。

    您需要非常小心,以确保您不会影响应用程序对真实用户的可扩展性。

    如您在问题中描述的那样限制每页的数据量只会增加客户端将对您的服务器发出的请求数量。

    • 1

相关问题

  • 每个 Oracle DBA 都应该知道的事情

  • SQL Server - 强制数据库在内存中?

  • 如何最好地编写 SQL Server 2008 上选定的表和数据的脚本?

  • 有人对 LeftHand 的 VSA SAN 有经验吗?[关闭]

  • 我应该从 RAID 5 配置运行我的数据库吗?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    Windows 中执行反向 DNS 查找的命令行实用程序是什么?

    • 14 个回答
  • Marko Smith

    如何检查 Windows 机器上的端口是否被阻塞?

    • 4 个回答
  • Marko Smith

    我应该打开哪个端口以允许远程桌面?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    kch 如何更改我的私钥密码? 2009-08-06 21:37:57 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve