[英]How to extract data from dynamic collapsing table with hidden elements using Selenium in Python
我嘗試從https://patents.google.com/patent/JP2009517369A/en?oq=JP2009517369
抓取這20個分類,從中顯示第一個,其他隱藏在可擴展的部分中。
我已經嘗試過用
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
WebDriverWait(driver, 20).until(EC.visibility_of_element_located((By.XPATH, "//div[@class='style-scope classification-tree' and not(@hidden)]/state-modifier[@class='code style-scope classification-tree']/a[@class='style-scope state-modifier']"))).get_attribute("innerHTML")
但是,這引發了一個異常,我不知道為什么。 因此,我認為刮刮整個表格會更容易,但是大多數元素都折疊了。
有什么方法可以抓取動態隱藏表嗎? 謝謝您的幫助!
前兩個選項應打印值C07C311/51
print(WebDriverWait(driver, 20).until(EC.visibility_of_element_located((By.XPATH, "//div[@class='style-scope classification-tree' and not(@hidden)]/state-modifier[@class='code style-scope classification-tree']/a[@class='style-scope state-modifier']"))).text)
要么
print(WebDriverWait(driver, 20).until(EC.visibility_of_element_located((By.XPATH, "//div[@class='style-scope classification-tree' and not(@hidden)]/state-modifier[@class='code style-scope classification-tree']/a[@class='style-scope state-modifier']"))).get_attribute("innerHTML"))
但是,如果您沒有獲得期望值,請嘗試最后一個,這應該會打印任何隱藏的內容。
print(WebDriverWait(driver, 20).until(EC.visibility_of_element_located((By.XPATH, "//div[@class='style-scope classification-tree' and not(@hidden)]/state-modifier[@class='code style-scope classification-tree']/a[@class='style-scope state-modifier']"))).get_attribute("textContent"))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.