python - 在 Instagram 中被阻止后如何发送请求
问题描述
我正在尝试制作一个登录 Instagram 帐户并使用请求库完成一些工作的工具,但经过大约 7-10 次尝试后,我想我被禁止了,我得到了这样的回复:
{"message":"Please wait a few minutes before you try again.","status":"fail"}
我尝试了很多事情来解除我的禁令,我使用了代理,我更改了用户代理,但它们都不起作用,禁令仍然存在。
from uuid import uuid4
import requests
r = requests.Session()
def check(username, password):
proxies = { "https": "https://proxy:port" }
url = 'https://i.instagram.com/api/v1/accounts/login/'
headers = {'User-Agent':'Instagram 113.0.0.39.122 Android (24/5.0; 515dpi; 1440x2416; huawei/google; Nexus 6P; angler; angler; en_US)', 'Accept':'*/*', 'Cookie':'missing', 'Accept-Encoding':'gzip, deflate', 'Accept-Language':'en-US', 'X-IG-Capabilities':'3brTvw==', 'X-IG-Connection-Type':'WIFI', 'Content-Type':'application/x-www-form-urlencoded; charset=UTF-8', 'Host':'i.instagram.com'}
uid = str(uuid4())
data = {'uuid':uid, 'password':password, 'username':username, 'device_id':uid, 'from_reg':'false', '_csrftoken':'missing', 'login_attempt_countn':'0'}
req_login = r.post(url, headers=headers, data=data, allow_redirects=True, proxies=proxies)
print (req_login.text)
check("user", "password")
这是代码,但正如我之前所说,没有任何改变,禁令暂时存在,但如果我等两三天再试一次,它就会起作用,并且在尝试多次后它会再次阻止我。
解决方案
您需要权限才能使用 instagram API,并且限制非常严格。
您可以在此处阅读更多内容并申请权限:https ://www.instagram.com/developer/
更改代理/用户代理不起作用的原因是禁令与您的帐户相关联。
你最好在Frida中使用与 Instagram 应用程序本身交互的自动化脚本,而不是试图用一个帐户绕过 API 限制。
推荐阅读
- java - 如何确定Android中两个视图的共同超级视图
- c# - 如何在 c# 中使用 VB6 InStr IntStRev 和 Mid
- json - Cassandra 和 Go API
- javascript - 在 Visual Studio Code 的集成终端中使用 node.js 打开 JavaScript 代码
- ios - 如何将 Apple Watch 检测为蓝牙外围设备
- python-3.x - 您可以使用 Pool 生成的最大多进程数量是多少?
- quickfixj - 如果 quickfixj 在 onmessage 中崩溃,我会丢失当前的消息吗?
- python - Django/DRF 应用程序收到 AttributeError:'function' 对象没有属性 'get_extra_actions'
- wordpress - Wordpress 中的自定义字段链接
- angular - 如何在数据服务器中使用 Angular Material 6 自动完成功能