一尘不染

如何使用Selenium Python读取表数据?

selenium

以下是表格HTML源代码,对于selenium读取其内容而言似乎非常复杂。有人可以帮助我,使用selenium将数据读入python吗?

<div class="general_table">
    <div class="general_s">
        <div class="general_text1">Name</div>
        <div class="general_text2">Abhishek</div>
    </div>
    <div class="general_m">
        <div class="general_text1">Last Name</div>
        <div class="general_text2">Kulkarni</div>
    </div>
    <div class="general_s">
        <div class="general_text1">Phone</div>
        <div class="general_text2"> 13613123</div>
    </div>
    <div class="general_m">
        <div class="general_text1">Cell Phone</div>
        <div class="general_text2">82928091</div>
    </div>         
    <div class="general_s">
        <div class="general_text1">City</div>
        <div class="general_text2"></div>
    </div>
    <div class="general_m">
        <div class="general_text1">Model</div>
        <div class="general_text2"> DELL PERC H700</div>
    </div>
</div>

阅读 316

收藏
2020-06-26

共1个答案

一尘不染

要使用Selenium Webdriver读取此表,xpath似乎是简单的方法-

我不太了解python,所以代码可能是错误的,但是这个主意似乎是正确的-

要找出中的div标签数量,general_table我们使用xpath-

driver.find_elements_by_xpath(("//*[@class='general_table']/div")它将返回一个
大小为6 的列表。

然后,您可以使用循环遍历每个元素-

for(int i=1;i<=list.length;i++){
    String text1 = driver.find_element_by_xpath("//*[@class='general_table']/div["+i+"]/div[1]").text;
    String text2 = driver.find_element_by_xpath("//*[@class='general_table']/div["+i+"]/div[2]").text;
}

您可以通过这种方式读取表中的所有标签。

2020-06-26