[instagram] Fix info_dict key name

This commit is contained in:
Philipp Hagemeister 2014-03-24 01:40:09 +01:00
parent 51fb2e98d2
commit 912b38b428
5 changed files with 42 additions and 7 deletions

View file

@ -309,6 +309,8 @@ def test_InstagramUser(self):
'thumbnail': 're:^https?://.*\.jpg', 'thumbnail': 're:^https?://.*\.jpg',
'uploader': 'Porsche', 'uploader': 'Porsche',
'uploader_id': 'porsche', 'uploader_id': 'porsche',
'timestamp': 1387486713,
'upload_date': '20131219',
} }
expect_info_dict(self, EXPECTED, test_video) expect_info_dict(self, EXPECTED, test_video)

View file

@ -35,6 +35,7 @@
url_basename, url_basename,
urlencode_postdata, urlencode_postdata,
xpath_with_ns, xpath_with_ns,
parse_iso8601,
) )
if sys.version_info < (3, 0): if sys.version_info < (3, 0):
@ -266,5 +267,10 @@ def test_urlencode_postdata(self):
data = urlencode_postdata({'username': 'foo@bar.com', 'password': '1234'}) data = urlencode_postdata({'username': 'foo@bar.com', 'password': '1234'})
self.assertTrue(isinstance(data, bytes)) self.assertTrue(isinstance(data, bytes))
def test_parse_iso8601(self):
self.assertEqual(parse_iso8601('2014-03-23T23:04:26+0100'), 1395612266)
self.assertEqual(parse_iso8601('2014-03-23T22:04:26+0000'), 1395612266)
self.assertEqual(parse_iso8601('2014-03-23T22:04:26Z'), 1395612266)
if __name__ == '__main__': if __name__ == '__main__':
unittest.main() unittest.main()

View file

@ -195,6 +195,7 @@
from .rottentomatoes import RottenTomatoesIE from .rottentomatoes import RottenTomatoesIE
from .roxwel import RoxwelIE from .roxwel import RoxwelIE
from .rtlnow import RTLnowIE from .rtlnow import RTLnowIE
from .rts import RTSIE
from .rutube import ( from .rutube import (
RutubeIE, RutubeIE,
RutubeChannelIE, RutubeChannelIE,

View file

@ -89,7 +89,7 @@ def _real_extract(self, url):
'uploader': user.get('full_name'), 'uploader': user.get('full_name'),
'uploader_id': user.get('username'), 'uploader_id': user.get('username'),
'like_count': like_count, 'like_count': like_count,
'upload_timestamp': int_or_none(it.get('created_time')), 'timestamp': int_or_none(it.get('created_time')),
}) })
if not page['items']: if not page['items']:

View file

@ -1,6 +1,7 @@
#!/usr/bin/env python #!/usr/bin/env python
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
import calendar
import contextlib import contextlib
import ctypes import ctypes
import datetime import datetime
@ -501,13 +502,13 @@ def orderedSet(iterable):
res.append(el) res.append(el)
return res return res
def unescapeHTML(s):
"""
@param s a string
"""
assert type(s) == type(u'')
result = re.sub(u'(?u)&(.+?);', htmlentity_transform, s) def unescapeHTML(s):
if s is None:
return None
assert type(s) == compat_str
result = re.sub(r'(?u)&(.+?);', htmlentity_transform, s)
return result return result
@ -761,6 +762,31 @@ def http_response(self, req, resp):
https_response = http_response https_response = http_response
def parse_iso8601(date_str):
""" Return a UNIX timestamp from the given date """
if date_str is None:
return None
m = re.search(
r'Z$| ?(?P<sign>\+|-)(?P<hours>[0-9]{2}):?(?P<minutes>[0-9]{2})$',
date_str)
if not m:
timezone = datetime.timedelta()
else:
date_str = date_str[:-len(m.group(0))]
if not m.group('sign'):
timezone = datetime.timedelta()
else:
sign = 1 if m.group('sign') == '+' else -1
timezone = datetime.timedelta(
hours=sign * int(m.group('hours')),
minutes=sign * int(m.group('minutes')))
dt = datetime.datetime.strptime(date_str, '%Y-%m-%dT%H:%M:%S') - timezone
return calendar.timegm(dt.timetuple())
def unified_strdate(date_str): def unified_strdate(date_str):
"""Return a string with the date in the format YYYYMMDD""" """Return a string with the date in the format YYYYMMDD"""