from selenium import webdriver
def recursive_traversal_child(_e):
_children = _e.find_elements_by_xpath('./child::*')
if len(_children) == 0:
print(_e.tag_name, _e.id)
if (_e.tag_name == 'p'):
print('\t文字:', _e.text)
elif (_e.tag_name == 'img'):
print('\t图片:', _e.get_attribute('src'))
else:
print('\t暂不处理')
else:
for _child in _children:
recursive_traversal_child(_child)
pass
driver = webdriver.Chrome()
driver.get('https://xuangubao.cn/v/article/100145236')
body = driver.find_element_by_xpath('//*[@id="100145236"]/div[3]/div')
recursive_traversal_child(body)
通过自己写的一个递归访问所有叶子节点的函数来处理所有的文字和图片。