Vimeo/Youtube/Dailymotion から提供される動画を埋め込むには、oEmbed 標準を使用してデータを「取得」しています。これは Youtube、Dailymotion、Soundcloud では問題なく機能しますが、Vimeo では機能しません。このデータを取得するには認証を受ける必要がありますか?
これが私がそれを機能させる方法です。
url = "http://vimeo.com/api/oembed.json?%s" %
urllib.urlencode({"url": url})
headers = {'User-Agent': 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)'}
req = urllib2.Request(url, "", headers)
obj = simplejson.loads(urllib2.urlopen(req).read())
エラーとしてHTTP Error 401: Unauthorizedが表示されます
トレースバック:
File "/path/to/module/models.py" in save
87. obj = simplejson.loads(urllib2.urlopen(req).read())
File "/usr/lib/python2.7/urllib2.py" in urlopen
126. return _opener.open(url, data, timeout)
File "/usr/lib/python2.7/urllib2.py" in open
397. response = meth(req, response)
File "/usr/lib/python2.7/urllib2.py" in http_response
510. 'http', request, response, code, msg, hdrs)
File "/usr/lib/python2.7/urllib2.py" in error
435. return self._call_chain(*args)
File "/usr/lib/python2.7/urllib2.py" in _call_chain
369. result = func(*args)
File "/usr/lib/python2.7/urllib2.py" in http_error_default
518. raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)
誰かアイデアはありますか?