【发布时间】:2017-11-07 13:33:50
【问题描述】:
我正在尝试在 Python 中使用 Selenium 和 XPath 进行抓取,以从表中获取“SIRET”行。 我尝试过不同类型的 XPath,但我做不到。 一个问题是“ class="reportRow" ”元素是动态变化的,它不能在位置编号之后被废弃。 “SIRET”原始值和他的“td class”子元素值,可以在“SIRET”文本之后或以其他方式报废吗?
这是我在访问网站时正在执行的手动步骤:
该站点仅包含根域。 通过登录数据访问该站点后,我输入一个搜索条件,该条件会打开一个页面,我必须在该页面上单击一个链接,该链接会打开一个带有表格的弹出窗口。 该表包含 4 行和 8 列,第一行包含列的名称,其他 3 行包含作为“SIRET”的数据。 这 3 行的位置会定期更改,具体取决于从特定服务器接收的数据。 这就是为什么我想用“SIRET”文本来消除那行和他的价值观。
我最终抓取的数据应如下所示:SIRET 646 90 0.2% $2.94 1.03 0.07 4.52。
非常感谢您的意见。
<div class="table_container">
<table>
<tbody>
<tr class="reportHead">.....</tr></tbody>
<tbody>
<tr class="reportRow ">....</tr>
<tr class="reportRow ">....</tr>
<tr class="reportRow ">
<td data-actual="SIRET" class="reportKeyword">SIRET</td>
<td class="td2">646</td>
<td class="td1">90</td>
<td class="rcr">0.2%</td>
<td class="td1">$2.94</td>
<td class="td1">1.03</td>
<td class="td1">0.07</td>
<td class="td1 rctl">4.52</td>
</tr>
</tbody>
<tfoot style="display: none;">....</tfoot>
</table>
【问题讨论】:
-
我的意思是你的输出需要 python 代码
-
你能分享你的代码试验吗?
-
class="reportKeyword" 我猜这应该修复
-
感谢您的回复。我无法共享整个鳕鱼,因为代码包含登录数据。我已经更新了这个问题,以便更清楚我想要获得什么。非常感谢您的意见。