Python 如何防止网络爬虫/爬虫/机器人攻击我的API

Python 如何防止网络爬虫/爬虫/机器人攻击我的API,python,flask,web-scraping,Python,Flask,Web Scraping,我不熟悉堆栈溢出。我有一个用Python 3开发的API。我从前端调用该API 我只需要对来自该浏览器/IP/的3个请求给出响应,无论检测该用户的最佳方式是什么,在第4个请求中,我需要抛出超出您限制的错误 我如何才能做到这一点,以确定用户是同一个用户,并为他们永久计时,直到他注册 前端:html和ajax请求 后端:pyhton3和烧瓶 我可以通过下面的方法获得ip地址 @app.route('/api/givedata', methods=['GET']) def givedata():

我不熟悉堆栈溢出。我有一个用Python 3开发的API。我从前端调用该API

我只需要对来自该浏览器/IP/的3个请求给出响应,无论检测该用户的最佳方式是什么,在第4个请求中,我需要抛出超出您限制的错误

我如何才能做到这一点,以确定用户是同一个用户,并为他们永久计时,直到他注册

  • 前端:html和ajax请求
  • 后端:pyhton3和烧瓶
我可以通过下面的方法获得ip地址

@app.route('/api/givedata', methods=['GET'])
def givedata():
    return jsonify({'ip': request.remote_addr}), 200

但是,一些刮片的家伙可能会使用VPN和其他东西来访问。如何防止这些数据爬虫/机器人?

如果您对python有疑问,为什么要用PHP和jquery标记它?同意这似乎与PHP或jquery没有任何关系。总之:“我如何实现这一点以识别用户是同一个用户”…简短回答:身份验证。让他们注册一个试用帐户。如果他们想更多地使用它,你可以把它转换成一个完整的帐户。“在这个问题上,任何不在指南中的错误发布。请原谅”…好吧,这篇文章没有什么大的错误,因为它发生了,但同样地,如果你在发布之前花时间阅读指南,你会有更少的问题。我可以从你的个人资料(由于缺少“知情”徽章)中看出,尽管在你创建帐户时有人建议你这样做,但你还没有参加。所以我猜如果你没有这样做,那么你可能也没有浏览帮助部分,也没有阅读或?这将是准则的最低要求。如果您不知道指南中的内容,那么很明显,您在遵守指南时会遇到困难。如果您对python有疑问,为什么要用PHP和jquery标记它?同意这似乎与PHP或jquery没有任何关系。总之:“我如何做到这一点以确定用户是同一个用户?”…简单回答:身份验证。让他们注册一个试用帐户。如果他们想更多地使用它,你可以把它转换成一个完整的帐户。“在这个问题上,任何不在指南中的错误发布。请原谅”…好吧,这篇文章没有什么大的错误,因为它发生了,但同样地,如果你在发布之前花时间阅读指南,你会有更少的问题。我可以从你的个人资料(由于缺少“知情”徽章)中看出,尽管在你创建帐户时有人建议你这样做,但你还没有参加。所以我猜如果你没有这样做,那么你可能也没有浏览帮助部分,也没有阅读或?这将是准则的最低要求。如果你不知道指南中的内容,那么很明显你很可能难以坚持。