Parece que Instagram no me permite iniciar sesión en la pestaña de automatización. ¿Alguien aquí se enfrentó al mismo problema?
En el pasado no tenía ningún problema, pero ahora parece que Instagram no permite que el usuario inicie sesión en una pestaña de automatización. Aparece el siguiente mensaje:
Hubo un problema al iniciar sesión en Instagram. Vuelva a intentarlo pronto.
Tan pronto como uso una pestaña normal e inicio sesión "manualmente", funciona. El mismo problema ocurre en una pestaña privada.
Hay dos programas para esta tarea. El primero guardará la autenticación. Hemos importado pickle que se usará para guardar el archivo de nuestro estado de inicio de sesión. la suspensión se utiliza para hacer que la frecuencia de actualización sea más lenta. Todo lo que necesita hacer es ejecutar el programa e iniciar sesión en su Instagram. driver.get() leerá constantemente su estado de inicio de sesión. He hecho sleep(10) para que se actualice cada 10 segundos. Puedes ajustarlo como quieras. Después de iniciar sesión con éxito. Asegúrate de que Instagram te recuerde. Solo espere 10 segundos y luego cierre el navegador y el selenio que funciona detrás, pero no cierre su programa python. El programa obtendrá un error cuando no pueda leer el estado del navegador que maneja nuestro intento, excepto. Cuando surge un error, el programa detectará que nuestro trabajo está hecho, saldrá del bucle y guardará nuestro estado de inicio de sesión en el archivo 'auth.pkl'.
from selenium import webdriver
from time import sleep
import pickle
driver = webdriver.Chrome()
driver.get("https://www.instagram.com/")
while True:
sleep(10)
try:
state=driver.get_cookies()
except:
break
pickle.dump(state,open("auth.pkl","wb"))
print(state)
La segunda parte es simplemente cargar su archivo "auth.pkl" y usar su Instagram, este programa también funciona para iniciar sesión en otros sitios. Aquí está nuestra parte, estamos encontrando el estado de inicio de sesión y usándolo para ejecutar Instagram en estado cargado.
from selenium import webdriver
import pickle
driver = webdriver.Chrome()
driver.get("https://www.instagram.com/")
cookies = pickle.load(open("auth.pkl", "rb"))
for cookie in cookies:
driver.add_cookie(cookie)
driver.get("https://www.instagram.com/")