Как использовать прокси в Инстаграпи

Я почти новичок в Python. Я пишу инстаграм-бота, чтобы делиться постами моей страницы с людьми в инстаграме. Но в большинстве случаев инстаграм меня ограничивает.

Мой первый вопрос — как использовать прокси в инстаграпи, чтобы обойти ограничения. Код ниже — это то, что документация 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;;;toronto@proxy.soax.com:9137")
after_ip = cl._send_public_request("https://api.ipify.org/")

print(f"Before: {before_ip}")
print(f"After: {after_ip}")

Но я на самом деле не знаю, как этим пользоваться. В смысле, как мне играть с прокси, пока бот включен и работает? следует ли мне использовать один раз при запуске робота или мне придется сменить прокси-сервер после нескольких выполненных действий? (например, собрать 10 пользователей из инстаграма)

И как в любом из этих случаев должен выглядеть код?

1 ответ

Я ни в коем случае не опытный программист, но, возможно, это вам поможет. Я бы не рекомендовал использовать прокси (во-первых, это не самый безопасный вариант), но, по моему опыту, Instagram все равно пометит вас и может в конечном итоге заблокировать вашу учетную запись.

Посмотрите dump_settings в документации Instagrapi здесь 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)
Другие вопросы по тегам