1- from helper import timestamp_to_datetime
1+ from .helper import timestamp_to_datetime
2+ import six
23
34
45class ApiModel (object ):
@@ -12,7 +13,17 @@ def object_from_dictionary(cls, entry):
1213 return cls (** entry_str_dict )
1314
1415 def __repr__ (self ):
15- return unicode (self ).encode ('utf8' )
16+ return str (self )
17+ # if six.PY2:
18+ # return six.text_type(self).encode('utf8')
19+ # else:
20+ # return self.encode('utf8')
21+
22+ def __str__ (self ):
23+ if six .PY3 :
24+ return self .__unicode__ ()
25+ else :
26+ return unicode (self ).encode ('utf-8' )
1627
1728
1829class Image (ApiModel ):
@@ -36,7 +47,7 @@ class Media(ApiModel):
3647
3748 def __init__ (self , id = None , ** kwargs ):
3849 self .id = id
39- for key , value in kwargs .iteritems ():
50+ for key , value in six .iteritems (kwargs ):
4051 setattr (self , key , value )
4152
4253 def get_standard_resolution_url (self ):
@@ -67,12 +78,12 @@ def object_from_dictionary(cls, entry):
6778 new_media .user = User .object_from_dictionary (entry ['user' ])
6879
6980 new_media .images = {}
70- for version , version_info in entry ['images' ]. iteritems ( ):
81+ for version , version_info in six . iteritems ( entry ['images' ]):
7182 new_media .images [version ] = Image .object_from_dictionary (version_info )
7283
7384 if new_media .type == 'video' :
7485 new_media .videos = {}
75- for version , version_info in entry ['videos' ]. iteritems ( ):
86+ for version , version_info in six . iteritems ( entry ['videos' ]):
7687 new_media .videos [version ] = Video .object_from_dictionary (version_info )
7788
7889 if 'user_has_liked' in entry :
@@ -113,14 +124,14 @@ class MediaShortcode(Media):
113124
114125 def __init__ (self , shortcode = None , ** kwargs ):
115126 self .shortcode = shortcode
116- for key , value in kwargs .iteritems ():
127+ for key , value in six .iteritems (kwargs ):
117128 setattr (self , key , value )
118129
119130
120131class Tag (ApiModel ):
121132 def __init__ (self , name , ** kwargs ):
122133 self .name = name
123- for key , value in kwargs .iteritems ():
134+ for key , value in six .iteritems (kwargs ):
124135 setattr (self , key , value )
125136
126137 def __unicode__ (self ):
@@ -129,7 +140,7 @@ def __unicode__(self):
129140
130141class Comment (ApiModel ):
131142 def __init__ (self , * args , ** kwargs ):
132- for key , value in kwargs .iteritems ():
143+ for key , value in six .iteritems (kwargs ):
133144 setattr (self , key , value )
134145
135146 @classmethod
@@ -156,7 +167,7 @@ def __unicode__(self):
156167class Location (ApiModel ):
157168 def __init__ (self , id , * args , ** kwargs ):
158169 self .id = str (id )
159- for key , value in kwargs .iteritems ():
170+ for key , value in six .iteritems (kwargs ):
160171 setattr (self , key , value )
161172
162173 @classmethod
@@ -178,7 +189,7 @@ class User(ApiModel):
178189
179190 def __init__ (self , id , * args , ** kwargs ):
180191 self .id = id
181- for key , value in kwargs .iteritems ():
192+ for key , value in six .iteritems (kwargs ):
182193 setattr (self , key , value )
183194
184195 def __unicode__ (self ):
0 commit comments