python中location_使用python请求模块时的LocationValueError
我一直在使用請求包與Web進行交互,過去沒有任何問題 . 最近當使用我大約一周沒用過的腳本時,我在執(zhí)行例程 requests.get() 調用時遇到以下錯誤:
LocationValueError: No host specified.
背景研究
經過大量的谷歌搜索 python requests LocationValueError , python requests no host error 和 python urllib3 LocationValueError 的各種排列(根據(jù)堆棧跟蹤錯誤由 urllib3 提出請求使用在下面)我只是設法找到隱藏在 urllib3 文檔中的這些信息:
exception urllib3.exceptions.LocationValueError在給定的URL輸入有問題時引發(fā) .
我嘗試了什么
我的版本的請求包可能有問題,因為這可能是請求包中使用的最基本的調用之一,我做了以下操作:
重新安裝的請求
使用pip創(chuàng)建了虛擬環(huán)境并安裝了請求
來自源的已安裝請求
expicitly安裝urllib3
從源代碼安裝python 3.4然后嘗試了(我現(xiàn)在使用python3.5)
在所有實例中,我使用以下代碼來查看請求是否仍然拋出LocationValueError:
import requests
address = 'http://www.google.com/'
requests.get(address)
這在過去一直有效 . 我檢查了另一臺計算機(一臺ubuntu筆記本電腦),它在那里工作,讓我認為這個問題是我的電腦特有的 .
問題的堆棧跟蹤
這是我在使用virtualenv和python3.4中安裝的請求時獲得的堆棧跟蹤 .
In [5]: import requests
In [6]: requests.get('http://www.google.com/')
---------------------------------------------------------------------------
LocationValueError Traceback (most recent call last)
in ()
----> 1 requests.get('http://www.google.com/')
/home/michael/Documents/my_test_env/lib/python3.4/site-packages/requests/api.py in get(url, params, **kwargs)
67
68 kwargs.setdefault('allow_redirects', True)
---> 69 return request('get', url, params=params, **kwargs)
70
71
/home/michael/Documents/my_test_env/lib/python3.4/site-packages/requests/api.py in request(method, url, **kwargs)
48
49 session = sessions.Session()
---> 50 response = session.request(method=method, url=url, **kwargs)
51 # By explicitly closing the session, we avoid leaving sockets open which
52 # can trigger a ResourceWarning in some cases, and look like a memory leak
/home/michael/Documents/my_test_env/lib/python3.4/site-packages/requests/sessions.py in request(self, method, url, params, data, headers, cookies, files, auth, timeout, allow_redirects, proxies, hooks, stream, verify, cert, json)
466 }
467 send_kwargs.update(settings)
--> 468 resp = self.send(prep, **send_kwargs)
469
470 return resp
/home/michael/Documents/my_test_env/lib/python3.4/site-packages/requests/sessions.py in send(self, request, **kwargs)
574
575 # Send the request
--> 576 r = adapter.send(request, **kwargs)
577
578 # Total elapsed time of the request (approximately)
/home/michael/Documents/my_test_env/lib/python3.4/site-packages/requests/adapters.py in send(self, request, stream, timeout, verify, cert, proxies)
335 """
336
--> 337 conn = self.get_connection(request.url, proxies)
338
339 self.cert_verify(conn, request.url, verify, cert)
/home/michael/Documents/my_test_env/lib/python3.4/site-packages/requests/adapters.py in get_connection(self, url, proxies)
247 proxy = prepend_scheme_if_needed(proxy, 'http')
248 proxy_manager = self.proxy_manager_for(proxy)
--> 249 conn = proxy_manager.connection_from_url(url)
250 else:
251 # Only scheme should be lower case
/home/michael/Documents/my_test_env/lib/python3.4/site-packages/requests/packages/urllib3/poolmanager.py in connection_from_url(self, url)
137 """
138 u = parse_url(url)
--> 139 return self.connection_from_host(u.host, port=u.port, scheme=u.scheme)
140
141 def urlopen(self, method, url, redirect=True, **kw):
/home/michael/Documents/my_test_env/lib/python3.4/site-packages/requests/packages/urllib3/poolmanager.py in connection_from_host(self, host, port, scheme)
246
247 return super(ProxyManager, self).connection_from_host(
--> 248 self.proxy.host, self.proxy.port, self.proxy.scheme)
249
250 def _set_proxy_headers(self, url, headers=None):
/home/michael/Documents/my_test_env/lib/python3.4/site-packages/requests/packages/urllib3/poolmanager.py in connection_from_host(self, host, port, scheme)
108
109 if not host:
--> 110 raise LocationValueError("No host specified.")
111
112 scheme = scheme or 'http'
LocationValueError: No host specified.
如果有人可以幫助解釋錯誤的原因或指出我正確的方向,那將是最受歡迎的 . 當我使用request.Session對象獲取擴展會話的頁面時,也會發(fā)生此問題 .
總結
以上是生活随笔為你收集整理的python中location_使用python请求模块时的LocationValueError的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java旋转图片后边上变黑_Java旋转
- 下一篇: UC浏览器电脑版怎么设置字体大小 UC浏