擅长:python、mysql、java
<p>最好确保您正在处理的URL具有分号URL编码。e、 g.<code>http://example.com/?q=abc&p=1%3B2%3B3</code></p>
<p>如果出于某种原因你不能做到以上几点,你可以这样做:</p>
<pre class="lang-py prettyprint-override"><code>from urllib.parse import urlparse, unquote_plus
url = "http://example.com/?q=abc&p=1;2;3"
parts = urlparse(url)
qs = parts.query
pairs = [p.split("=", 1) for p in qs.split("&")]
decoded = [(unquote_plus(k), unquote_plus(v)) for (k, v) in pairs]
</code></pre>
<pre><code>>>> decoded
[('q', 'abc'), ('p', '1;2;3')]
</code></pre>
<p>上面的代码假设了有关查询字符串的一些情况。e、 g.所有键都有值。如果你想要的东西,使较少的假设,请参阅<a href="https://github.com/python/cpython/blob/3.8/Lib/urllib/parse.py#L669:L727" rel="nofollow noreferrer">^{<cd2>} source code</a>。你知道吗</p>