gpt4 book ai didi

python - 如何使用未检测到的 chromedriver 单击弹出元素

转载 作者:行者123 更新时间:2023-12-05 05:42:22 25 4
gpt4 key购买 nike

我正在尝试制作 5 星机器人我已经完成了一半的工作来使用 gmail 登录,我唯一卡住的地方是点击弹出窗口询问开始和撰写评论时我什至无法点击在取消按钮上。弹出窗口似乎在另一个 iframe (#document) 中

我的代码

import time
import undetected_chromedriver as uc
from selenium.webdriver.common.keys import Keys
def login_Undetected():
username = 'ABC@gmail.com'
password ='ABC'
driver = uc.Chrome()
driver.get('https://accounts.google.com/ServiceLogin')
time.sleep(2)
driver.find_element_by_xpath('//input[@type="email"]').send_keys(username)
time.sleep(2)
driver.find_element_by_xpath('//*[@id="identifierNext"]').click()
time.sleep(2)

driver.find_element_by_xpath('//input[@type="password"]').send_keys(password)
time.sleep(2)
driver.find_element_by_xpath('//*[@id="passwordNext"]').click()
time.sleep(2)
driver.get('https://www.google.com/search?q=Flower%20shops&oq=flower+shops&aqs=chrome.0.69i59j69i57j0i271l3j69i60j69i61j69i60.1987j0j7&sourceid=chrome&ie=UTF-8&dlnr=1&sei=DW5lYsD7DNWEur4Pr8CT2A0&tbs=lf:1,lf_ui:10&tbm=lcl&sxsrf=APq-WBtzTXMsCEG8-8jHuqbpamowkj3Nlg:1650814482370&rflfq=1&num=10&rldimm=7685376553708120908&lqi=CgxGbG93ZXIgc2hvcHNIw4-b4dKtgIAIWhQQABABGAAiDGZsb3dlciBzaG9wc5IBD2Zsb3dlcl9kZXNpZ25lcpoBI0NoWkRTVWhOTUc5blMwVkpRMEZuU1VOdFgzVlFRMEpCRUFFqgEUEAEqECIMZmxvd2VyIHNob3BzKAA&phdesc=XQ9OeXHGpEI&ved=2ahUKEwiEv76Wg633AhVRLBoKHYiGAfIQvS56BAgMEAE&sa=X&rlst=f#dlnr=1&rlfi=hd:;si:7685376553708120908,l,CgxGbG93ZXIgc2hvcHNIw4-b4dKtgIAIWhQQABABGAAiDGZsb3dlciBzaG9wc5IBD2Zsb3dlcl9kZXNpZ25lcpoBI0NoWkRTVWhOTUc5blMwVkpRMEZuU1VOdFgzVlFRMEpCRUFFqgEUEAEqECIMZmxvd2VyIHNob3BzKAA,y,XQ9OeXHGpEI;mv:[[33.688926099999996,73.1433227],[33.5448866,72.9740797]];tbs:lrf:!1m4!1u3!2m2!3m1!1e1!1m4!1u2!2m2!2m1!1e1!2m1!1e2!2m1!1e3!3sIAE,lf:1,lf_ui:10')
time.sleep(10)
print('clicking ')
driver.find_element_by_xpath('//*[@class="DvzRrc ab_button"]').click()
print('Done')
time.sleep(5)
driver.find_element_by_xpath('//span[@class="VfPpkd-Jh9lGc"]').click()
time.sleep(15)
driver.find_element_by_xpath('//div[@aria-label="Five stars"]').click()
time.sleep(3)
driver.find_element_by_xpath('//*[@class="gLFyf gsfi"]').send_keys('cars')
time.sleep(2)
driver.find_element_by_xpath('//*[@class="gLFyf gsfi"]').send_keys(Keys.ENTER)
time.sleep(50)
def main():
login_Undetected()
if __name__ == "__main__":
main()

我面临的问题是第 24 行之后

弹出窗口的屏幕截图info

最佳答案

我试图访问的元素在另一个 i 框架内,所以我必须在它们之间切换才能与我使用的它们交互

driver.switch_to.frame(driver.find_element_by_name("IFRAME NAME"))
#ENTER CODE HERE
#AFTER THAT SWITCH BACK TO DEFAULT WINDOW BY
driver.switch_to.default_content()

在帧之间切换,这就成功了

请记得在你的工作完成后切换回来

关于python - 如何使用未检测到的 chromedriver 单击弹出元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72053656/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com