我几乎是 python 的新手。我正在编写一个 Instagram 机器人,用于将我页面的帖子分享给 Instagram 上的人。 但我大部分时间都被 instagram 限制了。
我的第一个问题是如何在 instagrapi 中使用代理绕过限制。 下面的代码是 instagrapi 文档在他们的 github 页面上的内容。
from instagrapi import Client
cl = Client()
before_ip = cl._send_public_request("https://api.ipify.org/")
cl.set_proxy("http://<api_key>:wifi;ca;;;[email protected]:9137")
after_ip = cl._send_public_request("https://api.ipify.org/")
print(f"Before: {before_ip}")
print(f"After: {after_ip}")
但是我其实不知道怎么用。我的意思是,当机器人启动并工作时,我应该如何使用代理?我应该在机器人启动时只使用一次,还是在完成一些操作后必须更改代理? (比如从 Instagram 收集 10 个用户)
在任何这些方式中,代码应该是什么样的?
我绝不是一个经验丰富的程序员,但也许这会帮助你。我不建议使用代理(首先它们不是最安全的选择)但根据我的经验,Instagram 无论如何都会标记你并最终可能会一起禁止你的帐户。
在这里查看 Instagrapi 文档中的 dump_settings https://adw0rd.github.io/instagrapi/usage-guide/interactions.html
这样 Instagram 就会“记住”您,而不会过多地标记您。或者看起来是这样。我仍在寻找避免 429 状态的确定方法。也许使用时间模块。仍在研究中。
如果有帮助,这是我当前的代码:
import os
from instagrapi import Client
client = Client()
if os.path.isfile('C:\Work In Progress\Python Code\IG_bot\dump_settings') == True:
client.load_settings("C:\Work In Progress\Python Code\IG_bot\dump_settings")
print("\n\nDump Settings Already Recorded")
else:
client.dump_settings("C:\Work In Progress\Python Code\IG_bot\dump_settings")
print("\n\nDump Settings Record Created")
client.login(username,password)