0

我正在寻找从网页中提取一系列数据的代码。网页是:

http://kos.hdsat.pl/menu-20.html

我感兴趣的数据范围是 Oscam.srvid 数据(页面上的第一个数据列表)。我想将此数据复制到名为 Oscam.srvid 的本地文件中

另一种选择是让脚本为包的盒子提供 tcck 并选择页面顶部的 Oscam.srvid 按钮。

我不确定哪个选项最容易编写脚本,但对我来说都可以正常工作..

4

1 回答 1

1

您可以使用wget下载html网站,然后sed提取您要使用的内容。就像是

wget http://kos.hdsat.pl/menu-20.html && sed -n '/<textarea/,${/<\/textarea/q; s/<.*>//g; p}' menu-20.html > Oscam.srvid

可以完成这项工作。

这里发生了什么事?

wget http://kos.hdsat.pl/menu-20.html下载文件,如果成功,我们将运行sed但使用选项抑制所有输出-n。现在我们寻找“textarea”的第一次出现并打印到文档的末尾($;我们实际上并没有打印到文档的末尾,而是稍后有一个退出语句)。在这些行中,我们运行以下sed命令:

/<\/textarea/q一旦我们找到“<\textarea”就退出。 s/<.*>//g删除所有 <> 括号,即 HTML 标记。 p打印所有行,因为我们抑制了输出。

这在网站上对我有用,但如果网站发生变化可能会失败。例如,如果在<textarea>我们实际查找的元素之前引入了另一个元素,它将提取 this 的内容<textarea>sed然后可以通过搜索Oscam.srvid或类似的东西来优化命令。

于 2013-11-01T12:51:57.177 回答