繁体   English   中英

如何避免每次使用 Selenium 和 Python 的 Instagram 登录页面

[英]How to avoid Instagram login page everytime using Selenium and Python

我正在尝试制作 selenium instagram 脚本。 我的问题是我每次都必须登录我的帐户。

如果我使用普通的谷歌浏览器,只需登录一次就足够了。 当我打开 Chrome 时,它​​总是保持登录状态。 但是 Chrome 驱动程序总是要求登录。

from selenium import webdriver
import time
import random
from selenium.webdriver.common.by import By
import kullaniciBilgileri as kb
import os.path
from pathlib import Path
from selenium.webdriver.chrome.options import Options
import collections

options = Options()
options.add_experimental_option('useAutomationExtension', False)
link = "http://www.instagram.org"
browser = webdriver.Chrome(options=options, executable_path="./chromedriver")
browser.get(url=link)
time.sleep(10)
username = browser.find_element(by=By.NAME, value=("username"))
password = browser.find_element(by=By.NAME, value=("password"))
username.send_keys(kb.userName)
password.send_keys(kb.password)
loginBtn = browser.find_element(by=By.CSS_SELECTOR, value=("#loginForm > div > div:nth-child(3) > button > div"))
                               
loginBtn.click()

有什么建议吗?

在访问您的Instagram以避免每次登录时,一旦您使用pickle模块首次登录,您可以存储cookies并在下次登录尝试时重复使用,如下所示:

from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
import pickle

driver.execute("get", {'url': 'http://www.instagram.org'})
WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "input[name='username']"))).send_keys("_devanjan_")
driver.find_element(By.CSS_SELECTOR, "input[name='password']").send_keys("dev__anjan")
driver.find_element(By.CSS_SELECTOR, "button[type='submit'] div").click()
pickle.dump( driver.get_cookies() , open("cookies.pkl","wb"))
driver.quit()
driver = webdriver.Chrome(service=s, options=options)
driver.execute("get", {'url': 'http://www.instagram.org'})
cookies = pickle.load(open("cookies.pkl", "rb"))
for cookie in cookies:
    driver.add_cookie(cookie)
driver.execute("get", {'url': 'http://www.instagram.org'})

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM