簡體   English   中英

Python - Selenium和XPATH從表中提取所有行

[英]Python - Selenium and XPATH to extract all rows from a table

我使用Selenium和XPATH從表中提取所有行,但只能獲取第一行。

這是我在做的事情:

from selenium import webdriver

path_to_chromedriver = '/Users/me/Desktop/chromedriver'
browser = webdriver.Chrome(executable_path = path_to_chromedriver)

url = "http://www.psacard.com/smrpriceguide/SetDetail.aspx?SMRSetID=1055"

browser.get(url)
browser.implicitly_wait(10)

SMRtable = browser.find_element_by_xpath('//*[@class="set-detail-table"]/tbody')

for i in SMRtable.find_element_by_xpath('.//tr'):
    print i.get_attribute('innerHTML')

browser.close()

當我轉換為字符串並打印時, SMRtable變量包含其中的所有行。 當我嘗試循環它時,它會拋出一個not iterable錯誤。

我也嘗試過使用browser.find_element_by_xpath('//*[@class="set-detail-table"]/tbody/tr') ,但這只給了我第一行。 我嘗試在/tr之后添加[position()>0] ,但仍然只有第一行。

我如何獲得所有行?

你需要find_elements_by_xpath() (注意“s”):

for i in SMRtable.find_elements_by_xpath('.//tr'):
    print i.get_attribute('innerHTML')

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM