Python 如何通过selenium移动光标来获取文本?
我试图从下面的图中的每个栏中获取文本 以下是我尝试过的:Python 如何通过selenium移动光标来获取文本?,python,selenium,web-scraping,Python,Selenium,Web Scraping,我试图从下面的图中的每个栏中获取文本 以下是我尝试过的: driver = webdriver.Chrome('d:/chromedriver.exe') driver.get('https://dph.georgia.gov/covid-19-daily-status-report') frame = driver.find_element_by_css_selector('#covid19dashdph > iframe') driver.switch_to.frame(frame)
driver = webdriver.Chrome('d:/chromedriver.exe')
driver.get('https://dph.georgia.gov/covid-19-daily-status-report')
frame = driver.find_element_by_css_selector('#covid19dashdph > iframe')
driver.switch_to.frame(frame)
element = driver.find_element_by_xpath('//*[@id="root"]/div/div[3]/div[4]/div/div[4]/div/div')
print(element.text) # return ''
# action = ActionChains(driver)
# action.move_by_offset(1, 1)
我的问题是:
我只是点击了svg标签并打印了它的值,该值在站点上的标签中
driver.get('https://dph.georgia.gov/covid-19-daily-status-report')
frame=WebDriverWait(driver, 30).until(EC.presence_of_element_located((By.CSS_SELECTOR, '#covid19dashdph > iframe')))
driver.switch_to.frame(frame)
svg=WebDriverWait(driver, 30).until(EC.presence_of_element_located((By.CSS_SELECTOR, " div.MuiBox-root.jss326 > div > svg")))
svg.click()
element=WebDriverWait(driver, 30).until(EC.presence_of_element_located((By.CSS_SELECTOR, "div.MuiBox-root.jss326 > div > div")))
print(element.text)
进口
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
输出
6月7日20
确诊个案524
7日移动平均线720.7
html标记包括:
<div class="c3-tooltip-container" style="position: absolute; pointer-events: none; display: none; top: 529.5px; left: 74.5px;">
<table class="c3-tooltip">
<tbody>
<tr><th colspan="2">07Jun20</th></tr>
<tr class="c3-tooltip-name--Confirmed-Cases">
<td class="name"><span style="background-color:#33a3ff"></span>Confirmed Cases</td>
<td class="value">524</td></tr>
<tr class="c3-tooltip-name--\37 -day-Moving-Average">
<td class="name"><span style="background-color:#ffcc32"></span>7-day Moving Average</td>
<td class="value">720.7</td>
</tr></tbody></table></div>
6月7日20
确诊病例
524
7日移动平均线
720.7
非常感谢,我从你身上学到了很多!两个后续问题:1)为什么单击“svg”标记以激活绘图区域?;2) 我如何循环遍历所有的条,并每天获取数字?底部的标记需要单击或移动到,然后重新填充它自己的值。我只是让它点击svg来做一个演示值。