-
Notifications
You must be signed in to change notification settings - Fork 832
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
TypeError: Retry.__init__() got an unexpected keyword argument 'method_whitelist' (urllib3 upgrade) #591
Comments
Thank you for this, it helped me with the same error. On Ubuntu add quotes: |
Does this also solve the issues of the previous threads about the 500 and 429 errors for timeframes less than or equal to a week? |
5 tasks
jairideout
added a commit
to onecodex/onecodex
that referenced
this issue
Nov 6, 2023
See GeneralMills/pytrends#591 Closes DEV-8825
jairideout
added a commit
to onecodex/onecodex
that referenced
this issue
Nov 7, 2023
Here is another solution.
retry = Retry(total=self.retries, read=self.retries,
connect=self.retries,
backoff_factor=self.backoff_factor,
status_forcelist=TrendReq.ERROR_CODES,
allowed_methods=frozenset(['GET', 'POST'])) Hope it can help. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
After upgrading the dependencies in my project, I've started facing the following exception:
Turns out the error started after urllib3 was upgraded from 1.26.12 to 2.0.4, as a result of upgrading Requests to anything >2.30.0.
The fix for projects using Pytrends is to downgrade the dependency manually, i.e.
pip install urllib3<2
orpoetry add urllib3<2
.Investigation
From the urllib3 2.0.0 changelog, here's the cause of the issue:
A workaround would be to specify a maximum version for urllib3 in
requirements.txt
, such asurllib3<2
(this is also the approach recommended by the Requests library in the version below). Though, since it is not a direct dependency of pytrends, but of the Requests package, it might be more complicated.Support for urllib3 v2.0 was added in Requests v2.30.0 (changelog), so pinning its requirement as
requests<2.30
could work as well (though there's no reason for pinning it as further versions are still compatible with urllib 1.x, and pinning urllib3 is also the approach recommended by Requests in the linked page).In the long run, it might be easier/worth it to upgrade the module to be compatible with urllib 2.x. A full migration guide is available here, though the line mentioned in this issue could likely be the only necessary change.
The text was updated successfully, but these errors were encountered: