shaare.it

Params Need URL Encoding

7 Dec 2025

1 min read

Params need URL encoding

$ python -c "import requests; requests.get('https://example.com/search?q=a+b&filter=a|b')"
# Server may misinterpret + and |

Why this happens

Reserved characters must be percent-encoded.

Fix

Let Requests encode via params= or use urllib.parse.quote_plus.

Wrong code

import requests
requests.get('https://example.com/search?q=a+b|c')

Fixed code

import requests
requests.get('https://example.com/search', params={'q':'a b|c'}, timeout=10)