首页 > 解决方案 > 使用 Selenium 和 Python 在 Instagram 通知中单击“现在不”

问题描述

我编写了一个脚本,可以成功登录 Instagram。当我应该在家里使用我的帐户时,网站会显示一个弹出窗口,询问您是否需要通知。在这一点上,我尝试了很多解决方案,但我一无所获。我只是希望,当显示弹出窗口时,脚本应该点击“Not now”。

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time


ids = []

driver = webdriver.Chrome(executable_path = '/usr/local/bin/chromedriver')
driver.get("https://www.instagram.com/accounts/login/?source=auth_switcher")


usm = driver.find_element_by_name('username').send_keys("**")
pwd = driver.find_element_by_name('password').send_keys("**")
btnLog = driver.find_element_by_tag_name('form').submit()

acpt = driver.find_element_by_xpath("//*[contains(@class, 'aOOlW   HoLwm ')]")

在图像中,突出显示了我要单击的按钮行:

点击这里查看图片。

标签: pythonseleniumselenium-webdriverinstagramwebdriverwait

解决方案


为此尝试以下代码:

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


ui.WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.CSS_SELECTOR, ".aOOlW.HoLwm"))).click()

PS:我在点击之前使用了 10 秒等待元素可点击。

希望对你有帮助!


推荐阅读