TypeError:“WebElement"对象不是可迭代的错误
问题描述
我正在尝试从维基百科主页中提取所有链接,但此代码显示 TypeError: 'WebElement' object is not iterable error.
I am trying to extract all the links from wikipedia homepage but this code showing TypeError: 'WebElement' object is not iterable error.
import time
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
browser=webdriver.Chrome()
browser.get('https://en.wikipedia.org/wiki/Main_Page')
search=[]
search=browser.find_element_by_xpath('//*[@href]')
for ii in search:
print(ii.get_attribute('href'))
time.sleep(4)
browser.close()
解决方案
问题是你使用的 find_element_by_xpath
只返回一个 WebElement(不可迭代),find_elements_by_xpath
返回一个 WebElement 列表.
The problem is that you are using find_element_by_xpath
which return only one WebElement (which is not iterable), the find_elements_by_xpath
return a list of WebElements.
解决方法:将 find_element_by_xpath
替换为 find_elements_by_xpath
Solution: replace find_element_by_xpath
with find_elements_by_xpath
参考:selenium-python 文档
相关文章