如何使用 selenium python 找到网页中的所有元素

Dem*_*axl 2 python selenium

这是一个非常简单的问题,但令人惊讶的是我在互联网上找不到答案。我试图找到网页中存在的所有元素。我知道在硒中寻找元素你可以说:

driver.find_elements_by_tag_name()
driver.find_elements_by_class_name()
driver.find_elements_by_css_selector()
driver.find_elements_by_name()
driver.find_elements_by_id()
Run Code Online (Sandbox Code Playgroud)

等等。但我怎样才能找到所有元素呢?

小智 5

尝试xpath

from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager

driver = webdriver.Chrome(ChromeDriverManager().install())

driver.get('http://google.com')

ele = driver.find_elements_by_xpath('//*[@id]')
for x in ele:
    print(x.tag_name, x.get_attribute('id'))
Run Code Online (Sandbox Code Playgroud)

给予

div gb
div gbwa
dialog spch-dlg
div spch
button spchx
div spchc
span spchl
span spchb
span spchi
span spchf
li ynRric
li YMXe
div duf3-46
a sbfblt
div tophf
div gws-output-pages-elements-homepage_additional_languages__als
div SIvCob
button Mses6b
ul dEjpnf
div YUIDDb
div lb
Run Code Online (Sandbox Code Playgroud)