我想知道如何从嵌入链接获得嵌入视频的直接链接(指向.flv / .mp4或任何文件的链接)。
例如,http://www.kumby.com/ano-hana-episode-1/有
<embed src="http://www.4shared.com/embed/571660264/396a46be"></embed>
,虽然视频的链接似乎是 “http://dc436.4shared.com/img/571660264/396a46be/dlink__2Fdownload_2FM2b0O5Rr_3Ftsid_3D20120514-093834-29c48ef9/preview.flv”
浏览器如何知道从哪里加载视频?如何编写将嵌入链接转换为直接链接的代码?
更新: 感谢Quentin的快速回答。 但是,当连接到“http://www.4shared.com/embed/571660264/396a46be”时,我似乎没有收到“位置”标题。
import urllib2
r=urllib2.urlopen('http://www.4shared.com/embed/571660264/396a46be')
给我以下标题: 'content-length','via','x-cache','accept-ranges','server','x-cache-lookup','last-modified','connection','etag','date ','content-type','x-jsl'
from urllib2 import Request
r=Request('http://www.4shared.com/embed/571660264/396a46be')
根本没有给我任何标题。
答案 0 :(得分:1)
服务器发出302 HTTP status code和a Location header。
$ curl -I http://www.4shared.com/embed/571660264/396a46be
HTTP/1.1 302 Moved Temporarily
Server: Apache-Coyote/1.1
(snip cookies)
Location: http://static.4shared.com/flash/player/5.6/player.swf?file=http://dc436.4shared.com/img/M2b0O5Rr/gg_Ano_Hi_Mita_Hana_no_Namae_o.flv&provider=image&image=http://dc436.4shared.com/img/M2b0O5Rr/gg_Ano_Hi_Mita_Hana_no_Namae_o.flv&displayclick=link&link=http://www.4shared.com/video/M2b0O5Rr/gg_Ano_Hi_Mita_Hana_no_Namae_o.html&controlbar=none
Content-Length: 0
Date: Mon, 14 May 2012 10:01:59 GMT
如果您想获取有关重定向响应的信息而不是自动关注重定向,请参阅How do I prevent Python's urllib(2) from following a redirect。