![wget 可以用来从网页提取特定数据吗?](https://linux22.com/image/1151067/wget%20%E5%8F%AF%E4%BB%A5%E7%94%A8%E6%9D%A5%E4%BB%8E%E7%BD%91%E9%A1%B5%E6%8F%90%E5%8F%96%E7%89%B9%E5%AE%9A%E6%95%B0%E6%8D%AE%E5%90%97%EF%BC%9F.png)
可以使用 wget 命令从网站提取特定数据吗?例如,从 www.sportscore.com 提取“cubs score”?如果可以,推荐的语法是什么?
答案1
wget
(或者curl
,就此而言)无法做到这一点,但通常的做法是使用另一个工具(最好是能够理解 HTML 的工具)来获取页面并提取相关部分。例如,要从 BBC 获取英超联赛表数据,我会这样做:
curl http://www.bbc.com/sport/football/tables -Ls |
pup '.gel-long-primer tr td:nth-child(3), .gel-long-primer tr td:nth-child(10), .gel-long-primer tr td:nth-child(11) text{}'
(它让我得到球队名称、净胜球和分数,然后我使用awk
等方法对它们进行处理,创建了一个 Cann 表。)
检查页面源代码,查看您感兴趣的分数的 HTML 元素是否具有识别特征(如id
或name
属性),或者是否与可以通过其他方式过滤的元素相关,然后使用等从或pup
下载的数据中获取该元素。您提到的网站无法打开,因此我无法提供帮助。wget
curl