我想将经典URL'http://bla/ble/bli'
转换为'http:%3A%2F%2Fbla%2Fble%2Fbli'
。
我尝试使用urllib库,但它只将:
转换为%3A
:
import urllib.parse
urllib.parse.quote('https://bla/ble:bli')
#https%3A//bla/ble%3Abli
我找不到将/
转换为%2F
的函数。
默认情况下,/
被认为是安全的。将safe=''
传递到quote
quote('https://bla/ble:bli', safe='')
# 'https%3A%2F%2Fbla%2Fble%3Abli'
根据docstring,这是因为常见用例希望保留/
:
安全参数的默认值为"/"。字符是保留的,但在引用函数的典型用法是在将保留现有的斜杠字符。