gpt4 book ai didi

ruby - 什么 xpath 查询可以解决这个问题

转载 作者:行者123 更新时间:2023-12-04 16:19:40 29 4
gpt4 key购买 nike

我可以使用什么 XPath 查询来解决以下问题。我实际上使用的是 nokogiri(在 ruby​​ 中),所以理想情况下,答案将采用 ruby​​ nokogiri 形式,但其他只有 XPath,我可以适应。

所需输出

我试图解析下面的 HTML(一个完整的 html 页面,但为了清楚起见,我只是复制/粘贴了相关部分),最终得到的基本上如下:

Phone Number   Plan ID
545454545 12345
3434343434 67890

所以在 Ruby/nokogiri 的上下文中,这可能是一个哈希,例如:
% result = { "545454545" => "12345",  "3434343434" => "67890" }

要解析的 HTML
.
.
.
<form method="post">
<div style='line-height:18px;background-color:#FFFFFF;border: 1px #dedede solid;padding:10px;'>
<table width='90%' border=0>
<tr>
<td width='30%'> Plan ID </td>
<td width='70%'> 12345 </td>

</tr>
<tr>
<td> Phone Number </td>
<td> 545454545 </td>
</tr>
.
.
.
</table>
</div>
<br>
.
.
.
<div style='line-height:18px;background-color:#FFFFFF;border: 1px #dedede solid;padding:10px;'>
<table width='90%' border=0>
<tr>
<td width='30%'> Plan ID </td>
<td width='70%'> 67890 </td>

</tr>
<tr>
<td> Phone Number </td>
<td> 3434343434 </td>
</tr>
.
.
.
</table>
</div>
<br>

最佳答案

怎么样:

xpath = '//td[contains(text(),"Phone Number") or contains(text(),"Plan ID")]/following-sibling::td'
Hash[*doc.xpath(xpath).map{|x| x.text.strip}.reverse]

关于ruby - 什么 xpath 查询可以解决这个问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9659771/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com