Comments (3)
This is one hundred percent your own fault. InvalidSchema is documented as a problem when we cannot find a suitable adapter to use for a request and adapters are found by looking at the longest prefix. You registered one with htxp
so you then told Requests you were registering an adapter to handle that scheme. After that, we were unable to use the adapter you configured to complete the request. Finally you're concerned with an exception we catch and then raise a new exception from, there you're being tripped up by the way exceptions are printed in python 3. You're also handling the correct exception when we can't manage that request for you
from requests.
The typo (htxp) was just an example, i am seeing the exact same behavior with valid schemes (e.g. rtmp://) unsupported by urllib3 also throwing requests.exceptions.InvalidURL
The million dollar question is:
How do i catch urllib3.exceptions.URLSchemeUnknown
in the stack if the URL is in fact NOT invalid (htxp:// vs rtmp://) if requests throws requests.exceptions.InvalidURL
for both without adding my own protocol validator?
from requests.
If you're writing your own totally custom adapters for those protocols then why do you care about catching an exception from urllib3?
If you're just using the HTTPAdapter from us for unsupported protocols why do you want to handle an exception from urllib3?
None of this makes any sense as a use case and it seems you're not reading the documentation and expecting me to give you solutions to problems that aren't problematic. This is now a request for help that belongs on StackOverflow.
from requests.
Related Issues (20)
- Enhance Error Messaging for Connection Failures
- Different default values for "allow_redirects" for HEAD http method HOT 4
- Multiple concurrent client certs broken with v2.32.3 HOT 4
- ssl certificate validation of requests was ignored but the ssl certificate still reported an error HOT 1
- ssl certificate validation of requests was ignored but the ssl certificate still reported an error HOT 2
- Certificate loading regression with HTTPAdapters in 2.32.3
- Deprecated `HTTPAdapter.get_connection()` method is never called, causing breakage without deprecation warnings HOT 2
- requests 2.32.3 & urllib3 1.26.18 issue with unicode put HOT 4
- requests 2.32.3 with IPv6 link local address fails with error: [Errno -2] Name or service not known HOT 1
- 2.32.3 does not load system CA certificates when using an Adapter HOT 4
- GET请求,我希望传递% 但是requests会默认帮我编码为%25,如何解决? HOT 1
- requests.utils. atomic_open does not respect umask HOT 1
- Feature Request: `safe_json()` Method for Requests Library HOT 1
- auth headers lost when requests process redirected requests HOT 1
- inconsistent handling of verify and REQUESTS_CA_BUNDLE HOT 1
- requests library seems to ignore "Transfer-Encoding" header HOT 1
- ValueError: Timeout value connect was <object object at 0x7c6b5e484a80>, but it must be an int, float or None. HOT 1
- Requests v2.32.0 caused the error `Segmentation fault` when including the `cert` parameter HOT 2
- Check for codes HOT 1
- Unclear file handling in documentation examples HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from requests.