我在 python 中使用 selenium 和 chrome 驅動程序。這是我的場景:我從網頁中提取具有id==customer_info或class==prize_info使用以下代碼的所有元素:customer_or_prize_list=driver.find_elements_by_xpath('//*[@id="customer_info" or @class="prize_info"]')現在我想遍歷列表“customer_or_prize_list”的每個元素并按如下方式處理如果網頁元素包含id==customer_info則執行 multi_line_text_formatting (假設其為操作 1)如果網頁元素包含class==prize_info則執行 single_line_text_formatting (假設其為操作 2)您可以假設 Web 元素不會同時包含 id 和 class。如何使用上面的 1. 和 2. 處理列表元素?
1 回答

白豬掌柜的
TA貢獻1893條經驗 獲得超10個贊
當您瀏覽列表中的每個元素時,使用以下方法獲取元素的屬性get_attribute():
for el in customer_or_prize_list:
? is_customer = "customer_info" in el.get_attribute("id")
? is_prize? ? = "prize_info"? ? in el.get_attribute("class")
其他方式,
為什么不將列表分成兩個小列表,如下所示:
customer_list=driver.find_elements_by_xpath('//*[@id="customer_info"]')
for e in customer_list:
? '''do multi_line_text_formatting'''
prize_list=driver.find_elements_by_xpath('//*[@class="prize_info"]')
for e in prize_list:
? '''do single_line_text_formatting'''
添加回答
舉報
0/150
提交
取消