@@ -259,9 +259,9 @@ def __init__(self,
259
259
self .verify_ssl = verify_ssl
260
260
self .cert_ssl = cert_ssl
261
261
262
- self .base_url = base_url or 'https://api.twitter.com/1.1 '
263
- self .stream_url = stream_url or 'https://stream.twitter.com/1.1 '
264
- self .upload_url = upload_url or 'https://upload.twitter.com/1.1 '
262
+ self .base_url = base_url or 'https://api.twitter.com/2 '
263
+ self .stream_url = stream_url or 'https://stream.twitter.com/2 '
264
+ self .upload_url = upload_url or 'https://upload.twitter.com/2 '
265
265
266
266
self .chunk_size = chunk_size
267
267
@@ -790,23 +790,30 @@ def GetUserTimeline(self,
790
790
Returns:
791
791
A sequence of Status instances, one for each message up to count
792
792
"""
793
- url = '%s/statuses/user_timeline.json' % (self .base_url )
793
+ if not user_id :
794
+ user_id = UsersLookup (screen_name = [username ])['id' ]
795
+ url = '%s/users/%s/tweets' % (self .base_url ,str (user_id ))
794
796
parameters = {}
795
797
796
- if user_id :
798
+ """ if user_id:
797
799
parameters['user_id'] = enf_type('user_id', int, user_id)
798
800
elif screen_name:
799
- parameters ['screen_name' ] = screen_name
801
+ parameters['screen_name'] = screen_name"""
800
802
if since_id :
801
803
parameters ['since_id' ] = enf_type ('since_id' , int , since_id )
802
- if max_id :
803
- parameters ['max_id' ] = enf_type ('max_id' , int , max_id )
804
+ # if max_id:
805
+ # parameters['max_id'] = enf_type('max_id', int, max_id)
804
806
if count :
805
- parameters ['count ' ] = enf_type ('count ' , int , count )
807
+ parameters ['max_results ' ] = enf_type ('max_results ' , int , count )
806
808
807
- parameters ['include_rts' ] = enf_type ('include_rts' , bool , include_rts )
808
- parameters ['trim_user' ] = enf_type ('trim_user' , bool , trim_user )
809
- parameters ['exclude_replies' ] = enf_type ('exclude_replies' , bool , exclude_replies )
809
+ exclude = []
810
+ if not include_rts :
811
+ exlude .append ('retweets' )
812
+
813
+ #parameters['trim_user'] = enf_type('trim_user', bool, trim_user)
814
+ if exclude_replies :
815
+ exclude .append ('replies' )
816
+ parameters ['exclude' ] = ',' .join (exclude )
810
817
811
818
resp = self ._RequestUrl (url , 'GET' , data = parameters )
812
819
data = self ._ParseAndCheckTwitter (resp .content .decode ('utf-8' ))
@@ -2922,7 +2929,7 @@ def UsersLookup(self,
2922
2929
if not any ([user_id , screen_name , users ]):
2923
2930
raise TwitterError ("Specify at least one of user_id, screen_name, or users." )
2924
2931
2925
- url = '%s/users/lookup.json ' % self .base_url
2932
+ url = '%s/users/by ' % self .base_url
2926
2933
parameters = {
2927
2934
'include_entities' : include_entities
2928
2935
}
@@ -2934,7 +2941,7 @@ def UsersLookup(self,
2934
2941
if len (uids ):
2935
2942
parameters ['user_id' ] = ',' .join ([str (u ) for u in uids ])
2936
2943
if screen_name :
2937
- parameters ['screen_name ' ] = parse_arg_list (screen_name , 'screen_name' )
2944
+ parameters ['usernames ' ] = parse_arg_list (screen_name , 'screen_name' )
2938
2945
2939
2946
if len (uids ) > 100 :
2940
2947
raise TwitterError ("No more than 100 users may be requested per request." )
@@ -4849,7 +4856,7 @@ def VerifyCredentials(self, include_entities=None, skip_status=None, include_ema
4849
4856
A twitter.User instance representing that user if the
4850
4857
credentials are valid, None otherwise.
4851
4858
"""
4852
- url = '%s/ account/verify_credentials.json' % self . base_url
4859
+ url = 'https://api.twitter.com/1.1/ account/verify_credentials.json'
4853
4860
data = {
4854
4861
'include_entities' : enf_type ('include_entities' , bool , include_entities ),
4855
4862
'skip_status' : enf_type ('skip_status' , bool , skip_status ),
@@ -5090,7 +5097,7 @@ def _ParseAndCheckTwitter(self, json_data):
5090
5097
raise TwitterError ({'message' : "Exceeded connection limit for user" })
5091
5098
if "Error 401 Unauthorized" in json_data :
5092
5099
raise TwitterError ({'message' : "Unauthorized" })
5093
- raise TwitterError ({'message' : 'Unknown error' : ' {0}' .format (json_data )})
5100
+ raise TwitterError ({'message' : 'Unknown error: {0}' .format (json_data )})
5094
5101
self ._CheckForTwitterError (data )
5095
5102
return data
5096
5103
0 commit comments