Shell脚本:解析iFrame的URL并获取iFrame URL

时间:2014-12-11 13:40:27

标签: bash shell sed wget parse-url

我想解析我的网站,搜索<iframe> - 代码并获取网址(attr src="")。

我试过这样:

url=`wget -O - http://my-url.com/site 2>&1 | grep iframe`
echo $url

有了这个,我得到了整个HTML行:

<iframe src="//player.vimeo.com/video/AAAAAAAA?title=0&amp;byline=0&amp;portrait=0" width="480" height="360" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>     </div>

好吧,我现在如何解析网址? 我尝试了一些sed - 语法,但没有成功:(这是我尝试的内容:

wget -O - http://myurl.com/ 2>&1 | grep iframe | sed "s/<iframe src/\\n<iframe src/g"

亲切的问候, 马特;)

2 个答案:

答案 0 :(得分:2)

sed -n '/<iframe/s/^.*<iframe src="\([^"]*\)".*/\1/p'

您不需要grepsed模式匹配可以做到这一点。然后,您使用包含\(...\)的捕获组来挑选src属性中引号内的网址。

答案 1 :(得分:0)

你不需要sed,cut就足够了:

~$ url='<iframe src="//player.vimeo.com/video/AAAAAAAA?title=0&amp;byline=0&amp;portrait=0" width="480" height="360" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe>     </div>'
~$ echo $url|cut -d'"' -f 2
//player.vimeo.com/video/AAAAAAAA?title=0&amp;byline=0&amp;portrait=0