shell script一句话下载youtube flv/mp4
Posted | archive
id="oHg5SJYRHA0"; curl -L "http://www.youtube.com/get_video?asv=&fmt=18&video_id=$id&t=$(curl -s http://www.youtube.com/watch?v=$id | sed -n 's/.*, "t": "\([^"]*\)", .*/\1/p')" > 1.mp4
其中 fmt=18
表示360p清晰度。主要遇到2个问题,一个是URL里必须有 asv=
才能成功,二是sed的p模式还第一次遇到,而且group匹配括号前后必须有东西才能只输出括号内容,而不是整行内容。sed不适合我啊。。。
Comments