使用curl | grep获得广告牌前200名
嗨,我正试图抓住广告牌上的前200首歌曲/艺术家 我知道我需要使用使用curl | grep获得广告牌前200名,curl,grep,xquery,Curl,Grep,Xquery,嗨,我正试图抓住广告牌上的前200首歌曲/艺术家 我知道我需要使用 curlhttp://www.billboard.com/charts/billboard-200 |grep“”? 这会抓取第一页的歌曲并将其输出,但看起来很难看。以下是一些帮助您继续的方法: curl -silent http://www.billboard.com/charts/billboard-200 | awk -vRS="id=\"rank_" -F"\n" 'NR>1 {split($4,m," *<
curlhttp://www.billboard.com/charts/billboard-200 |grep“”?
这会抓取第一页的歌曲并将其输出,但看起来很难看。以下是一些帮助您继续的方法:
curl -silent http://www.billboard.com/charts/billboard-200 | awk -vRS="id=\"rank_" -F"\n" 'NR>1 {split($4,m," *</?h1>");melody=m[2];split($6,a,"\"");artist=a[4];print "("$1+0") "melody " - " artist}'
(1) 1989 - Taylor Swift
(2) x - Ed Sheeran
(3) The Pinkprint - Nicki Minaj
(4) In The Lonely Hour - Sam Smith
(5) SremmLife - Rae Sremmurd
(6) Hozier - Hozier
(7) 2014 Forest Hills Drive - J. Cole
(8) Guardians Of The Galaxy: Awesome Mix Vol. 1 - Soundtrack
(9) FOUR - One Direction
(10) My Everything - Ariana Grande
(11) Into The Woods - Soundtrack
(12) Montevallo - Sam Hunt
(13) Annie - Soundtrack
(14) Greatest Hits: Decade #1 - Carrie Underwood
(15) V - Maroon 5
(16) Frozen - Soundtrack
(17) Old Boots, New Dirt - Jason Aldean
(18) Reclassified - Iggy Azalea
(19) Native - OneRepublic
(20) 1000 Forms Of Fear - Sia
curl-silenthttp://www.billboard.com/charts/billboard-200 |awk-vRS=“id=\”rank \“-F”\n“NR>1{split($4,m,“*”);melody=m[2];split($6,a,“\”);artist=a[4];print“($1+0”)“melody”-“artist}”
(1) 1989年的今天,泰勒·斯威夫特
(2) x-Ed Sheeran
(3) 针印-Nicki Minaj
(4) 在孤独的时刻-山姆·史密斯
(5) SremmLife-Rae Sremmurd
(6) 霍泽尔-霍泽尔
(7) 2014森林丘陵大道-J.科尔
(8) 银河守护者:真棒混音第1卷-配乐
(9) 四一方向
(10) 我的一切——阿丽亚娜·格兰德
(11) 进入树林-配乐
(12) 蒙特瓦洛-山姆亨特
(13) 安妮-配乐
(14) 最受欢迎歌曲:十年#1-卡莉·安德伍德
(15) V-褐红色5
(16) 冻结音轨
(17) 旧靴子,新污垢-杰森·奥尔登
(18) 重新分类-Iggy杜鹃花
(19) 本地-非本地公共
(20) 1000种形式的恐惧-Sia
输出:
注
- 使用和
sed-i 43d saxon lint.pl
,抱歉,我必须修复此问题(目前尚未发布),我已将您的代码更改为:saxon lint--html--xpath',在//article/header let$song:=$a/h1/text()让$artist:=$a/p[@class=“chart\u info”]/a/text()返回concat(“艺术家:,$artist,,$song:,$song)”http://www.billboard.com/charts/billboard-200
它从行尾打印一个大约6个空格的$a。为什么这样做
$ for i in {0..9}; do
saxon-lint --html --xquery '
for $a in //article[@id]
let $chart := $a//span[@class="this-week"]/text()
let $artist := normalize-space($a//div[@class="row-title"]/h3/a/text())
let $song := normalize-space($a//h2/text())
let $link := string($a//div[@class="row-title"]/h3/a/@href)
return
concat(
"[", $chart, "] ", $song, " - ", $artist,
" : http://www.billboard.com", $link
)
' "http://www.billboard.com/charts/billboard-200?page=$i"
done
[1] 1989 - Taylor Swift : http://www.billboard.com/artist/371422/taylor-swift
[2] x - Ed Sheeran : http://www.billboard.com/artist/276089/ed-sheeran
[3] The Pinkprint - Nicki Minaj : http://www.billboard.com/artist/312259/nicki-minaj
...
[200] Take Me Home - One Direction : http://www.billboard.com/artist/314021/one-direction