2 回答

TA貢獻(xiàn)1856條經(jīng)驗(yàn) 獲得超5個贊
此行代碼的問題: element_text = element.find_elements_by_xpath(".//div[@class='WP0F WN0F']//div[@class='WDQY']//ul[@class='WHDR WCQY']").text查找元素的ist 重新調(diào)整列表,并且列表沒有 .text 屬性。嘗試遍歷返回的列表:
elements = driver.find_elements_by_xpath("//div[@class='WGGO WKFO']//ul//li[@class='WO0F WHHO WI5 WF2F']//div[@class='WP0F WN0F']//div[@class='WDQY']//ul[@class='WHDR WCQY']")
#as a list comprehention
element_text= [element.text for element in elements]
#or as a for loop
element_text=[]
for element in elements:
element_text.append(element.text)

TA貢獻(xiàn)1883條經(jīng)驗(yàn) 獲得超3個贊
element_list已經(jīng)包含您要打印的所有元素,即element_text. 你不能WebElement用來定位自己,它沒有失敗的原因NoSuchElementException是當(dāng)xpath你從另一個元素中定位元素時,你需要指定當(dāng)前上下文.
find_element_by_xpath('.//div')
迭代element_list
for element in element_list:
print(element.text)
或者,如果您真的想拆分它,因?yàn)槟诟噶斜砩嫌懈嗫梢允褂玫牟僮鳎ㄗ⒁馑s短了element_list xpath)
element_list = driver.find_elements_by_xpath("//div[@class='WGGO WKFO']//ul//li[@class='WO0F WHHO WI5 WF2F']")
for element in element_list:
element_text = element.find_element_by_xpath(".//div[@class='WP0F WN0F']//div[@class='WDQY']//ul[@class='WHDR WCQY']").text
print(element_text)
添加回答
舉報