我需要为没有网址的网址添加一个方案。我想使用以下代码:
from urllib.parse import urlparse, urlunparse
url = 'example.com'
parsed = urlparse(url)
parsed = parsed._replace(scheme='https')
new_url = urlunparse(parsed)
print(new_url)
代替此:
https://example.com
脚本正在返回以下内容:
https:///example.com
如果我尝试这样获取网址,则会引发错误:
requests.get('https:///example.com')
为什么会这样,我该怎么办?
我正在使用:
Windows 10
Python 3.6.1
Anaconda 4.4.0
答案 0 :(得分:1)
将初始字符串解析为路径组件,因为没有方案表明该字符串是主机:
urlparse('example.com')
# ParseResult(scheme='', netloc='', path='example.com', params='', query='', fragment='')
也许添加一个方案来使它明确:
urlparse('http://example.com')
# ParseResult(scheme='http', netloc='example.com', path='', params='', query='', fragment='')