python - 使用 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 ')]")
在图像中,突出显示了我要单击的按钮行:
解决方案
为此尝试以下代码:
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 秒等待元素可点击。
希望对你有帮助!
推荐阅读
- javascript - 平滑的 CSS 背景图像过渡
- reactjs - 缩小多少会减少文件大小?
- java - 接收两个自然数并计算其中一个出现在另一个中的次数。爪哇
- php - 如何从展开的自定义字段名称列表中删除最后一个逗号
- spring-boot - spring boot 微服务端到端测试,带有黄瓜和数据库验证
- java - 用高效的算法从数组中获取缺失的数字?‽?
- c++ - 如何使用 std::unique_ptr 作为类的静态映射
- vue.js - (Vue.js) 如何在 'Vue.js' 上使用 github 页面
- javascript - 我怎样才能使滚动锁定?
- android - sqlite 无法创建表