Python post中文引數傳遞出錯的一種解決辦法
引數例項:
values = {"json":{
"name": "張三",
"number":"一號"
}
}
兩種方法對比程式示例:
#coding=utf-8 import urllib a = urllib.quote('張三') b = urllib.quote('一號') print "先將‘張三’進行urlencode編碼為:",a print "先將‘一號’進行urlencode編碼為:",b data1 = {"json":{ #方法1,直接放入中文 "name": "張三", "number":"一號" } } data1 = urllib.urlencode(data1) print "直接將中文放入引數後實際所傳遞的引數:\n",data1 data2 = {"json":{ #方法2,間接放入中文 "name": "%E5%BC%A0%E4%B8%89", #代替張三 "number":"%E4%B8%80%E5%8F%B7" #代替一號 } } data2 = urllib.urlencode(data2) print "先將中文編碼後代入,實際所傳遞的引數:\n",data2
程式執行結果:
先將‘張三’進行urlencode編碼為: %E5%BC%A0%E4%B8%89 先將‘一號’進行urlencode編碼為: %E4%B8%80%E5%8F%B7 直接將中文放入引數後實際所傳遞的引數: json=%7B%27name%27%3A+%27%5Cxe5%5Cxbc%5Cxa0%5Cxe4%5Cxb8%5Cx89%27%2C+%27number%27%3A+%27%5Cxe4%5Cxb8%5Cx80%5Cxe5%5Cx8f%5Cxb7%27%7D 先將中文進行編碼後代入,實際所傳遞的引數: json=%7B%27name%27%3A+%27%25E5%25BC%25A0%25E4%25B8%2589%27%2C+%27number%27%3A+%27%25E4%25B8%2580%25E5%258F%25B7%27%7D
對比發現,編碼是不一致的,所以遇到中文引數傳遞出錯,先對中文進行編碼再做替換是一種可行方法。
本人利用方法二解決了Python2.7中的中文引數傳遞失敗的問題。
注:本方法僅用於本例項,引數為雙層json資料包裝的格式,僅供參考。
相關推薦
Python post中文引數傳遞出錯的一種解決辦法
引數例項: values = {"json":{ "name": "張三", "number":"一號"
FlowPaper中文PDF亂碼的一種解決辦法
view r.js 完全 pdf 配置 -a 比對 html framwork [關鍵詞]FlowPaper、PDF.js、亂碼 [結論]先給出解決辦法,後面的大段內容只是為了記錄當時的排查過程。 PDF.js有全局變量對象PDFJS(1.8以上版本在pdf.js最後,1.
Android 傳送get請求 URL中文引數顯示問號的一種解決辦法
問題描述: 其中問號的字塊是URL中的中文引數。 在嘗試使用 String params = URLEncoder.encode(text,"utf-8"); 也會出現這種錯誤 解
Visual Studio build tools 安裝出錯的一種解決辦法
clas layout 分享圖片 安裝 安裝出錯 mage build 參數 log 一般是安裝包丟失或損壞,那麽我麽可以用離線下載的方式來先行下載。 用 -h 看下幫助 主要是Layout參數。 下載完,到下載目錄安裝吧。Visual Studio buil
struts2 url 傳參 中文亂碼 的一種解決辦法
<a href="test.action?userName=張三">請點選</a> 上面的 userName 的值是中文,傳到 action 後會變亂碼。 因為url傳中文實
Python BeautifulSoup中文亂碼問題的2種解決方法
解決方法一: 使用python的BeautifulSoup來抓取網頁然後輸出網頁標題,但是輸出的總是亂碼,找了好久找到解決辦法,下面分享給大家 首先是程式碼 from bs4 import BeautifulSoup import urllib2 url = 'htt
Mybatis模糊查詢,查詢不到中文,卻可以查詢到英文和數字的一種解決辦法
一、問題描述 最近使用Mybatis對MySQL資料庫查詢時,遇到了這個問題:使用模糊查詢語句時,可以查詢英文,但是查詢不到中文,Eclipse中DEBUG輸出的資訊–如圖: 可以看到,查詢中文“彩”字兒時返回的0條記錄,查詢123時。返回了1條記錄。而
關於java傳送http請求時中文亂碼的一種解決辦法
https://my.oschina.net/angerbaby/blog/207774摘要: 在jsp中常見的亂碼解決辦法無外乎是關於get和post兩種方式的,但只有切實地在實踐中使用時才會注意或者說注重到其他方式。例如,在http請求頭中傳送中文引數,出現亂碼,如何解決
ShardingJDBC不支持批量插入的一種解決辦法
gpo ins app war source ava tran user cep 最近項目中需要進行分表就使用了ShardingJDBC做數據庫中間層操作 之前sql中有寫批量插入,而ShardingJDBC不支持insert xxx values(...),(...),(
關於新建maven工程時,出現Could not calculate build plan錯誤(其中一種解決辦法)
昨天呢,自己更改了一下eclipse的workspace,然後在新建maven工程時 出現Could not calculate build plan錯誤 去網上搜索了很多辦法都沒有奏效,後來終於找到問題所在 &
一個div中多個元素垂直居中的一種解決辦法
有多個元素需要垂直居中排列時,嘗試了很多方法,總結一下覺得用flex的佈局是最方便的。 目標實現: <div id="findclass" class="flexbox"> <div> </div>
Ubuntu18.04圖形介面崩潰無法進入桌面問題解決;cuda-9-0 (>= 9.0.176)的另一種解決辦法
追加:【已解決,有一張顯示卡硬體不穩定】 參考我的最終記錄: 首先說明我的情況: Ubuntu18.04,配置了CUDA9.0,在執行一段時間後,圖形介面突然崩潰,當時正在使用Teamviewer遠端操作Matlab。 報錯主要是“starting nvidia
有關於【該檔案的字元編碼需要在傳輸協議層宣告,或者在檔案中加入一個 BOM(位元組順序標記)】的另一種解決辦法
昨天測試一個介面的時候發現一個異常,瀏覽器訪問一個controller,然後帶了一個JSON格式的引數,然後瀏覽器返回400錯誤,除錯發現下面的錯誤資訊: 純文字檔案的字元編碼未宣告。如果該檔案包含 US-ASCII 範圍之外的字元,該檔案將在某些瀏覽器配置中呈現為亂碼。該
關於ubuntu沒有聲音的一種解決辦法
剛安裝了最新的ubuntu18,向在Chrome上聽歌,卻沒有聲音。在網上查了下終於找到解決辦法,如第一行參考。在終端輸入命令安裝 pavucontrol#sudo apt install pavucontrol啟動 pavucontrol#pavucontrol開啟網頁
ajax的post提交引數長度超出限制的解決辦法
tomcat 下 post提交預設最大 2M,修改maxPostSize值可解決引數長度超出限制。 修改tomcat檔案目錄下 conf/service.xml 檔案 tomcat 版本 >= 7.0.63 maxPostSize 必須小於 0 ,否則會出現 引
Connection reset異常的一種解決辦法
最近壓測時,服務端系統出現了“Connection reset”的異常,原因是伺服器關閉了Connection[呼叫了Socket.close()方法]。當檢查了應用中沒有顯示關閉的連結的程式碼後,調系統核心的引數後壓測再無報錯: a.進入: vim /
git clone失敗的一種解決辦法
小技巧,有時候通過git clone從github上更新程式碼失敗,比如 git clone https://github.com/xxx.git 提示下載失敗, 可以嘗試把https://換成 git:// git clone git://github.com/xxx.g
Eclipse安裝ColorTheme失敗的一種解決辦法
今天重新裝了一下Eclipse,但是當我安裝ColorTheme的時候嘗試了各種辦法一直安裝失敗,然後突發奇想將ColorTheme的線上網址改為https://eclipse-color-theme.github.io/update/,之後很以外的成功了,本人
ubuntu下“ fatal error: pyconfig.h: 沒有那個檔案或目錄”的一種解決辦法
博主的系統是ubuntu14.04,之前一段時間一直使用的是python2.7,最近因業務需要升級到python3.6。 在將專案由python2.7升級到python3.6的過程中,涉及到C++檔案封裝到python的重新編譯配置。 編譯過程中報錯: boost/py
LNMP環境下502錯誤的一種解決辦法
我採用的php-fpm的模式跑php,訪問出現502!經驗告訴我有可能是php-fpm的原因造成的!重啟systemctl restart php-fpm可能能解決問題!對比php-fpm的版本與nginx配置的版本!此處是php7.2-fpm,那麼對應的php版本也應該是p