/usr/local/lib/python3.11/dist-packages/requests/models.py in raise_for_status(self) 1022 1023 if http_error_msg: -> 1024 raise HTTPError(http_error_msg, response=self) 1025 1026 def close(self):
HTTPError: 403 Client Error: Forbidden for url: https://www.strava.com/api/v3/athlete/activities
And if I comment out the line response.raise_for_status() in the second (not working) api call, I get this response:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <HTML><HEAD><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1"> <TITLE>ERROR: The request could not be satisfied</TITLE> </HEAD><BODY> <H1>403 ERROR</H1> <H2>The request could not be satisfied.</H2> <HR noshade size="1px"> Bad request. We can't connect to the server for this app or website at this time. There might be too much traffic or a configuration error. Try again later, or contact the app or website owner. <BR clear="all"> If you provide content to customers through CloudFront, you can find steps to troubleshoot and help prevent this error by reviewing the CloudFront documentation. <BR clear="all"> <HR noshade size="1px"> <PRE> Generated by cloudfront (CloudFront) Request ID: 2tJ8jATdcM98QPLdUdNFrGpvyBgg3UBwy1QmoWmW_i41motaOoWkSw== </PRE> <ADDRESS> </ADDRESS> </BODY></HTML>
@ActivityFix, for some reason I can neither edit my post nor include code in this comment. But I have put my code in this pastebin.
Shouldn't the page argument be passed as params instead of data?