有人可以告诉我如何只提取红色方 block 中的文本吗? 我一直在摆弄 python 并试图提取它但没有成功。 我正在编写一个脚本,要求您输入一个地址,然后启动 Firefox(或 Chrome)转到谷歌网站并从已保存在 python 脚本中的地址搜索旅行时间和距离。我只需要红色方 block 中的文本在命令屏幕中显示为纯文本。
任何帮助将不胜感激,到目前为止我所尝试的是下面,我只是不知道如何访问该元素。
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
import time
print("Please type in address")
address = input()
driver = webdriver.Firefox()
url = r"https://www.google.com"
driver.get(url)
ara = driver.find_element_by_name("q")
ara.send_keys("Navigate to "+ address + " "+"from terror st keilor park" + Keys.RETURN)
x = driver.get_element_by_xpath("//div[@id='exp0']/div[1]/div/div[@class='BbbuR uc9Qxb uE1RRc']")
print(x.text)
最佳答案
使用 WebDriverWait
并等待元素 element_to_be_clickable
并使用以下 xpath
。
element=WebDriverWait(driver,20).until(EC.element_to_be_clickable((By.XPATH,'//div[@data-rre-id="exp0"]')))
print(element.text)
要执行上面的代码,您需要导入以下内容。
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
关于html - 谁能告诉我如何在 Python 上提取和显示图像中的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57196407/