需要使用pythonselenium中的xpath访问HTML表中的值

2024-10-03 15:23:36 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个网络浏览器的应用程序用户界面表如下所示。。。在

DATAPOINT           VALUE           STATUS
Output Voltage     95.0 VAC         Nominal
PS Input Voltage   15.0 VAC         Nominal
Inverter Status       Off           Nominal
Major Alarm        No Alarm         Nominal
Minor Alarm        No Alarm         Nominal

InnerHTML表示是这样的。。。在

^{pr2}$

上面的表格是由这样的HTML表格创建的。。。在

<table id="inventoryGrid1" class="table table-striped table-bordered dataTable no-footer" role="grid" style="width: 408px;">
  <thead>
  <tbody>
    <tr class="odd" role="row">
      <td>Output Voltage</td>
      <td>95.0 VAC</td>
      <td>
        <img src="../img/led/led_green.png">
        <span> Nominal </span>
      </td>
    </tr>
    <tr class="even" role="row">
      <td>PS Input Voltage</td>
      <td>135.0 VAC</td>
      <td>
    </tr>
    <tr class="odd" role="row">
      <td>Inverter Status</td>
      <td>Off</td>
      <td>
    </tr>
    <tr class="even" role="row">
    <tr class="odd" role="row">
  </tbody>
</table>

完整的xpath是。。。在

/html/body/div[2]/div/div/div/div[2]/div[2]/div/div/div/div[1]/div[1]/div/table/tbody/tr[1]/td[2]

我需要知道。。。在

  1. 我无法分配:
    第2行col3=通过xpath查找元素(“/html/body/div[2]/div/div/div/div[2]/div[2]/div/div/div[1]/div[1]/div/table/tbody/tr[2]/td[3]”“#试图将变量赋给表(第2行第3列)中的“标称”元素

    引发错误:因为“list”对象没有属性。。。 它是否显示td tag name是一个列表?所以不能赋值给一个变量? 无论如何,我应该使用row2col3=通过xpath查找元素(“/html/body/div[2]/div/div/div/div[2]/div[2]/div/div/div[1]/div[1]/div/table/tbody/tr[2]/td[3]”“,以便使其正常工作!

  2. 如果使用row2col3元素,则既不能使用row2col3.text,也不能使用row2col3.get_属性(“innerHTML”)。我怎么弄到这个?有可能吗?

如何特别从表中读出row2col3? 请原谅我的长xpath实现命令和糟糕的英语和长消息。。。:)


Tags: div元素tablexpathtrclassroletd