我決定像這樣在 URL 上添加一個查詢字串
import urllib
import urllib.parse
from urllib.parse import urlencode
url = "https://datausa.io/api/data?Geography=04000US06&drilldowns=Race,Ethnicity&measures=Hispanic Population,Hispanic Population Moe"
parts = urllib.parse.urlparse(url)
query_dict = urllib.parse.parse_qs(parts.query)
query_dict['Geography'] = '04000US24'
new_parts = list(parts)
new_parts[4] = urlencode(query_dict)
print(urllib.parse.urlunparse(new_parts))
我得到了這個結果
https://datausa.io/api/data?Geography=04000US24&drilldowns=['Race,Ethnicity']&measures=['Hispanic Population,Hispanic Population Moe']
所以這個網址不再起作用了。所以我用了 unquote,像這樣
from urllib.parse import unquote
url = unquote('https://datausa.io/api/data?Geography=04000US24&drilldowns=['Race,Ethnicity']&measures=['Hispanic Population,Hispanic Population Moe']')
print(url)
但得到了這個
https://datausa.io/api/data?Geography=04000US24&drilldowns=['Race,Ethnicity']&measures=['Hispanic Population,Hispanic Population Moe']
這個網址也不起作用。
如何洗掉方括號并回傳原始網址 https://datausa.io/api/data?Geography=04000US24&drilldowns=Race,Ethnicity&measures=Hispanic Population,Hispanic Population Moe ?
謝謝
uj5u.com熱心網友回復:
使用doseq引數。
new_parts[4] = urlencode(query_dict, doseq=True)
urllib.parse.urlencode有關引數的更多資訊,請參閱檔案
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/483943.html
