【发布时间】:2018-06-28 11:07:09
【问题描述】:
我正在尝试制作一个 linux bash script 来下载 html 页面,从该 html 页面中提取数字并将它们分配给一个变量。
html 页面有几行,但我对这些很感兴趣:
<tr>
<td width="16"><img src="img/ico_message.gif"></td>
<td width="180"><strong> TIME 1</strong></td>
<td width="132">
<div align="right"><strong>61</strong></div></td>
</tr>
<tr>
<td width="16"><img src="img/ico_message.gif"></td>
<td width="180"><strong> TIME 2</strong></td>
<td width="132">
<div align="right"><strong>65</strong></div></td>
</tr>
</table></td>
每次下载页面时,我都必须读取strong>和</strong之间的5和11行中的两个值(在本例中为61广告65;61和 65 在这个例子中,但每次都不一样)
从html中提取的两个值必须能够赋值给两个变量
感谢您的建议
【问题讨论】:
-
添加目前尝试过的命令组合。
-
Bash 不是适合这项工作的工具。如果标记不是太损坏,我会使用 HTML 感知工具(在我的情况下为xsh),或者在 Perl 中使用HTML::TableExtract。
-
您应该使用
xpath实用程序来解析xml/html。您可以从 bash 脚本调用命令行xpath工具。 -
欢迎来到 Stack Overflow!抱歉,这不是 StackOverflow 的工作方式。 “我想做 X,请给我提示和/或示例代码”形式的问题被认为是题外话。请访问help center并阅读How to Ask,尤其是阅读Why is “Can someone help me?” not an actual question?