![](/img/trans.png)
[英]How to search for text in a webpage within a specific area using Selenium in Python
[英]Searching for text within a specific column in a webpage using Selenium with Python
我正在搜索的網頁有關鍵字的多個實例,但我有興趣在特定列中查找實例。 我需要使用多個術語進行搜索才能找到關鍵字和列標識符。 頁面上的整個表格都包含在“正文”中,因此沒有 header。找到關鍵字的適當實例后,我需要將兩列移到上方才能獲得正確的下載。
row = driver.find_element(By.XPATH, "//*[contains(text(), 'keyword')]")
tree = lxml.html.fromstring(row.parent.page_source)
element = tree.xpath("//*[contains(text(), 'keyword')]")[0]
root = tree.getroottree()
xpth = root.getpath(element)
pdf_xpath = xpth.replace('td[4]', 'td[6]')
關鍵字在 td[4] 中出現之前出現在 td[5] 中,並且 find_element 不會給出超過第一個實例。
'/html/body/div[2]/div[3]/div/div[4]/div[3]/div[2]/div/table/tbody/tr[62]/td[5]'
'/html/body/div[2]/div[3]/div/div[4]/div[3]/div[2]/div/table/tbody/tr[83]/td[4]'
第一個 xpath 是當前正在標記的內容,第二個是我要標記的內容,兩者具有相同的文本。
實現此目的的一種 hacky 方法可能是使用find_elements
而不是find_element
,然后訪問您喜歡的元素。
rows = driver.find_elements(By.XPATH, "//*[contains(text(), 'keyword')]")
row_i_want = rows[1]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.