fixed vimeo oembed
This commit is contained in:
@@ -1 +1 @@
|
|||||||
Version 2.00.0 (2012-08-19 18:20:11) dev
|
Version 2.00.0 (2012-08-19 18:36:14) dev
|
||||||
|
|||||||
@@ -126,12 +126,19 @@ EXTENSION_MAPS = {
|
|||||||
'xps': googledoc_viewer,
|
'xps': googledoc_viewer,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
class VimeoURLOpener(urllib.FancyURLopener):
|
||||||
|
"Vimeo blocks the urllib user agent for some reason"
|
||||||
|
version = "Mozilla/4.0"
|
||||||
|
urllib._urlopener = VimeoURLOpener()
|
||||||
|
|
||||||
def oembed(url):
|
def oembed(url):
|
||||||
for k,v in EMBED_MAPS:
|
for k,v in EMBED_MAPS:
|
||||||
if k.match(url):
|
if k.match(url):
|
||||||
oembed = v+'?format=json&url='+cgi.escape(url)
|
oembed = v+'?format=json&url='+cgi.escape(url)
|
||||||
try:
|
try:
|
||||||
return loads(urllib.urlopen(oembed).read())
|
data = urllib.urlopen(oembed).read()
|
||||||
|
print data
|
||||||
|
return loads(data) # json!
|
||||||
except:
|
except:
|
||||||
pass
|
pass
|
||||||
return {}
|
return {}
|
||||||
@@ -143,10 +150,10 @@ def expand_one(url,cdict):
|
|||||||
# try ombed but first check in cache
|
# try ombed but first check in cache
|
||||||
if cdict and url in cdict:
|
if cdict and url in cdict:
|
||||||
r = cdict[url]
|
r = cdict[url]
|
||||||
elif cdict:
|
|
||||||
r = cdict[url] = oembed(url)
|
|
||||||
else:
|
else:
|
||||||
r = oembed(url)
|
r = oembed(url)
|
||||||
|
if isinstance(cdict,dict):
|
||||||
|
cdict[url] = r
|
||||||
# if oembed service
|
# if oembed service
|
||||||
if 'html' in r:
|
if 'html' in r:
|
||||||
html = r['html'].encode('utf8')
|
html = r['html'].encode('utf8')
|
||||||
|
|||||||
Reference in New Issue
Block a user