如何使用Selenium-Python从div类获取内容?

时间:2019-07-08 22:28:28

标签: python-3.x selenium selenium-webdriver

enter image description here

我想使用div class <table__9d458b97>

提取左侧的内容

我不想使用xpath来完成这项工作,因为某些内容不在同一位置。

driver2 = webdriver.Chrome(r'XXXX\chromedriver.exe')
driver2.get("https://www.bloomberg.com/profiles/people/15103277-mark-elliot-zuckerberg")

这是我使用xpath的代码(如何使用该类?):

boardmembership_table=driver2.find_elements_by_xpath('//*[@id="root"]/div/section/div[5]')[0]
boardmembership_table.text

感谢您的帮助!

3 个答案:

答案 0 :(得分:0)

如果要访问董事会成员资格表,可以使用下面的xpath。

 //*[@id="root"]/div/section/div[h2[.='Board Memberships']]

答案 1 :(得分:0)

您可以使用 css_selector

您可以使用以下代码

from selenium.webdriver import Chrome


driver2 = Chrome()

driver2.get("https://www.bloomberg.com/profiles/people/15103277-mark-elliot-zuckerberg")

els = driver2.find_elements_by_css_selector('.table__9d458b97[role="table"]')

for el in els:
    print(el.text)

driver2.close() 

请注意,您正在使用find_element s _by_css_selector,它将返回元素列表或如果找不到则返回空列表。

答案 2 :(得分:0)

您还可以使用以下同级符号来获取标题“ Board Membership”旁边的div 像这样 '//h2[contains(.,"Board Membership“)] // following-sibling :: div'