我正在创建一个python程序,它需要能够发送谷歌环聊消息。我最初尝试了一个API,但发现这些仅适用于环聊聊天。所以现在我正在尝试selenium webdriver
.但是我在尝试打开聊天时遇到了问题;该程序给了我一个错误:
NoSuchElementException: no such element: Unable to locate element: {"method":"CSS selector","selector":"div.gS5QBe.R8jgRe"}
(Session info: chrome=69.0.3497.100)
(Driver info: chromedriver=2.38.552522 (437e6fbedfa8762dec75e2c5b3ddb86763dc9dcb),platform=Windows NT 10.0.17134 x86_64)
我的代码:
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from time import sleep
driver = webdriver.Chrome()
driver.get("https://hangouts.google.com/")
driver.find_element_by_id("gb_70").click()
elem = driver.find_element_by_id("identifierId")
elem.send_keys("my_username")
elem.send_keys(Keys.RETURN)
sleep(3)
pas = driver.find_element_by_css_selector("input.whsOnd")
pas.send_keys("my_password")
pas.send_keys(Keys.RETURN)
sleep(10)
driver.switch_to_frame(driver.find_element_by_tag_name("iframe"))
driver.find_element_by_css_selector("div.gS5QBe.R8jgRe")
我尝试过在线查找,但找不到解决方案。这是网站。
页面中会有很多 iframe。为元素包含的特定 iframe 创建定位器。我看到第二个 iframe 有新消息按钮。
driver.switch_to_frame(driver.find_element_by_xpath("(//iframe)[2]"))
但我建议您使用谷歌提供的环聊API