Столкнулся я со следующей проблемой - requests не может загрузить страницу, в url которой есть умлаут:
resp = requests.get('http://irr.ru/electronics-technics/ironing-sewing-equipment/sewing-machines/Prodam-shveynaya-mashinka-K%C3%B6hler-11-30-advert277603897.html') --------------------------------------------------------------------------- TooManyRedirects Traceback (most recent call last) <ipython-input-12-67230f7ebce4> in <module>() ----> 1 resp = requests.get('http://irr.ru/electronics-technics/ironing-sewing-equipment/sewing-machines/Prodam-shveynaya-mashinka-K%C3%B6hler-11-30-advert277603897.html') C:\Dev\Python32\lib\site-packages\requests\api.py in get(url, **kwargs) 53 54 kwargs.setdefault('allow_redirects', True) ---> 55 return request('get', url, **kwargs) 56 57 C:\Dev\Python32\lib\site-packages\requests\api.py in request(method, url, **kwargs) 42 43 session = sessions.Session() ---> 44 return session.request(method=method, url=url, **kwargs) 45 46 C:\Dev\Python32\lib\site-packages\requests\sessions.py in request(self, method, url, params, data, headers, cookies, files, auth, timeout, allow_redirects, proxies, hooks, stream, verify, cert) 333 'allow_redirects': allow_redirects, 334 } --> 335 resp = self.send(prep, **send_kwargs) 336 337 return resp C:\Dev\Python32\lib\site-packages\requests\sessions.py in send(self, request, **kwargs) 452 453 # Resolve redirects if allowed. --> 454 history = [resp for resp in gen] if allow_redirects else [] 455 456 # Shuffle things around if there's history. C:\Dev\Python32\lib\site-packages\requests\sessions.py in <listcomp>(.0) 452 453 # Resolve redirects if allowed. --> 454 history = [resp for resp in gen] if allow_redirects else [] 455 456 # Shuffle things around if there's history. C:\Dev\Python32\lib\site-packages\requests\sessions.py in resolve_redirects(self, resp, req, stream, timeout, verify, cert, proxies) 85 86 if i >= self.max_redirects: ---> 87 raise TooManyRedirects('Exceeded %s redirects.' % self.max_redirects) 88 89 # Release the connection back into the pool. TooManyRedirects: Exceeded 30 redirects.
Оставляю в стороне вопрос того, насколько вообще хорошо использовать в url умлаут, так как проблему в requests это не особо оправдывает.
Впрочем, страницы с кириллическими url requests как-то без проблем загружает.
Подскажите, пожалуйста, как можно решить эту проблему?