2014-10-29 49 views
1

简单小狗:帮助限制结果

是否有使用pup限制结果的数量不是整体的方式,但在标签的水平?

背景故事/用例

自从我知道了小狗,我一直念念不忘。我一直在思考新的使用案例。今天早上我想用它来抓住ESPN的最新头条。

ESPN似乎有一个像这样的无序列表:<ul class="headlines">然后是一堆列表项。

一个简单的解决办法是:

$ curl -s -S http://espn.go.com/ | pup .headlines a text{} 

吧?但是,正如你所看到的,有时有多个环节,每行每一个话题交替作者:

http://f.cl.ly/items/2x1S3c1I2s1S3C2e340C/Screen%20Shot%202014-10-29%20at%2012.11.21%20PM.png http://f.cl.ly/items/2x1S3c1I2s1S3C2e340C/Screen%20Shot%202014-10-29%20at%2012.11.21%20PM.png

,那么你最终会与像“低”,“Anande”,“斯塔克”的结果,和“Dinich”(ESPN作者的姓氏)。

理想我想这样做:

$ curl -s -S http://espn.go.com/ | pup .headlines li a slice{:1} text{} 

但只返回的第一个结果。 :\

有每<li><a>标签,所以我想检索所有<li>项目,但限制<a>标签的数量,以1元<li>。这可能吗?

谢谢!

回答

2
$ curl -s -S http://espn.go.com/ | pup '.headlines li a:first-of-type text{}' 
+0

太棒了!谢谢埃里克! :) – 2014-10-30 02:37:40

+0

@LoisaidaSam几个星期后,但小狗现在有伪造,使这个发生干净 – 2014-11-10 03:55:09

+0

PUP FOR THE WIN!谢谢埃里克! :) – 2014-11-12 20:20:47