Python3 編碼問題: 怎麼將Unicode轉中文,以及GBK亂碼ÖйúÉÙÊýÃñ×åÌØÉ«´åÕ¯
原理:
如果***type(text) is bytes***,
那麼text.decode('unicode_escape')
如果type(text) is str,
那麼text.encode(‘latin1’).decode(‘unicode_escape’)
1. 案例:
*
#coding=utf-8
import requests,re,json,traceback
from bs4 import BeautifulSoup
def qiushibaike():
content = requests.get('http://baike.baidu.com/city/api/citylemmalist?type=0&cityId=360&offset=1&limit=60' ).content
soup = BeautifulSoup(content, 'html.parser')
print(soup.prettify()) #.decode("unicode_escape")
#目前soup.prettify()為str
new=soup.prettify().encode('latin-1').decode('unicode_escape')
#.dencode('latin-1').encode('latin-1').decode('unicode_escape')
print(new)
if __name__=='__main__' :
qiushibaike()
2. 結果對比:
案例2,\xe5\x8f\xa4\xe8\xbf\xb9編碼
\xe5\x8f\xa4\xe8\xbf\xb9編碼處理
userInputTag=["\xe5\x8f\xa4\xe8\xbf\xb9","\xe5\xbb\xba\xe7\xad\x91"]
print(userInputTag[0].encode('latin-1').decode('utf-8'))
結果:
古蹟
完成轉化
出現GBK無法編譯
另外爬取時,網站程式碼出現GBK無法編譯python3,如出現如下:
<h1 >ÖйúÉÙÊýÃñ×åÌØÉ«´åÕ¯[6]</h1>
示例:
#coding=utf-8
import requests
#共有6頁,首頁為空不為6
for i in range(6):
if i==0:
url='http://www.tcmap.com.cn/list/zhongguoshaoshuminzutesecunzhai.html'
else:
url='http://www.tcmap.com.cn/list/zhongguoshaoshuminzutesecunzhai'+str(i)+'.html'
response=requests.get(url)
print(type(response))
#如需成功編譯,在.TEXT下面增加#號部分
html=response.text #.encode('latin-1').decode('GBK')
print(html)
檔案讀寫操作codecs.open
python 檔案讀寫時用open還是codecs.open
案例:當我們需要寫入到TXT中的過程中
代替這繁瑣的操作就是codecs.open,例如
import codecs
fw = codecs.open(‘test1.txt’,’a’,’utf-8’)
fw.write(line2)
不會報錯,說明寫入成功。這種方法可以指定一個編碼開啟檔案,使用這個方法開啟的檔案讀取返回的將是unicode。寫入時,如果引數 是unicode,則使用open()時指定的編碼進行編碼後寫入;如果是str,則先根據原始碼檔案宣告的字元編碼,解碼成unicode後再進行前述 操作。相對內建的open()來說,這個方法比較不容易在編碼上出現問題。
相關推薦
Python3 編碼問題: 怎麼將Unicode轉中文,以及GBK亂碼ÖйúÉÙÊýÃñ×åÌØÉ«´åÕ¯
原理: 如果***type(text) is bytes***, 那麼text.decode('unicode_escape') 如果type(text) is str, 那麼text.encode(‘latin1’).deco
python3 把\u開頭的unicode轉中文,把str形態的unicode轉中文
python3 把unicode轉中文,把str形態的unicode轉中文 今天用py3.5爬東西的時候,爬到的是json格式,裡面的中文還都是unicode的形式. 講道理的話只要直接輸出就可以了,類似這樣的 >>> print (
PHP Unicode編碼與解碼_Unicode轉中文_中文轉Unicode字元
今天使PHP開發用到了Unicode的編碼與解碼,將unicode轉為中文,再將中文轉Unicode這樣的操作是非常常見的,所以小編將這兩個unicode中文互轉函式給作為一個筆記儲存起來,非常的簡單,會用就行了。1:下面來看PHP Unicode編碼方法,將中文轉為Un
C++ Builder 源碼:TTS 文字轉語音,可以朗讀文字,或者把文字轉為 wav 聲音文件
源碼 img 操作 sde lan 語音 skill http sta TTSDemo / TVictorTTS: 兼容 C++ Builder 2010 ~ C++ Builder 10 (CX) 版本 ? 包括 Win32 和 Win64 兩個版本。兼容的操作系統:W
Delphi中Unicode轉中文
copy char del let har str string nes ide function UnicodeToChinese(inputstr: string): string;var i: Integer; index: Integer; tem
插入排序:將一部分看成有序,一部分無序,無序的第一個數字與前面的交換,需要臨時變數temp來儲存無序的第一個
package com.interview.datastructure; public class SelectSort { public static void sort(int[] a) { if (a != null) { for (int i = 1; i
用PHP將Unicode 轉化為UTF-8
function unescape($str) { $str = rawurldecode($str); preg_match_all("/(?:%u.{4})|&#x.{4};|&#\d+;|.+/U", $str, $r); $ar = $r[0]; foreach(
java 中文轉Unicode 以及 Unicode轉中文
package com.sun;public class Snippet { public static void main(String[] args) { String cn = "你";&n
前端之路:網頁內容轉圖片,並且複製網頁內容,並且優化體驗。(截圖外掛Clipboard.js 的使用)。
做專案遇到一個比較奇葩的需求,覺得很有意思,記錄下。方便以後回憶。 涉及框架(html2canvas.min.js clipboard.mn.js): 直接連cdn <script src="https://cdn.bootcss.com/jquery/3.3
如何在vscode裡將px轉rem,而且還得爽!
自從新版移動端IM介面改用rem適配,效果實在太棒了。所以,接下來的主要工作會將一些核心頁面,也從px向rem轉移。 然,一直用慣了VSCODE,再加上設計稿等諸多原因,如果真想一下子從rem上編碼著實還是很困難。因此,一般而言,都是先訂一個基準大小,最後根據這個大小進行轉
jmeter中文亂碼及Unicode轉中文
data alt bean 再次 encoding rev address 設置 測試的 在測試的過程中傳入中文測試,亂碼問題 1、get請求傳入中文參數address:中國雲南省 request請求中已經正確顯示參數(可能跟我之前配置過有關系),如果沒有正確顯示,
canvas畫布儲存圖片,avaScript將圖片轉畫布,用JavaScript將畫布保持成圖片格式,上傳阿里雲
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <style>
avaScript將圖片轉畫布,用JavaScript將畫布保持成圖片格式
使用JavaScript將圖片拷貝進畫布 要想將圖片放入畫布裡,我們使用canvas元素的drawImage方法: // Converts image to canvas; returns new canvas element function convertImageToCanvas(im
學會將PDF轉Excel,一鍵實現轉換
在工作中,有的時候偶爾會出現一些商業E-Mail的傳送,但是在傳送之前我們是需要將PDF文件中的資料內容轉換成Excel的格式,所以學會將PDF轉Excel的方法很重要,下面小編就帶給大家一個一鍵將PDF轉成Excel的好方法。 PDF轉Excel的簡單方法一:【複製貼上法】 詳細操作步驟: 首先我可以
命名更改小結:下劃線轉駝峰,或駝峰轉下劃線
1、下劃線轉駝峰 const toCamel = str =>str.replace(/([^_])(?:_+([^_]))/g, (_,p1, p2)=>p1+p2.toUpperCas
sqlite3 unicode轉中文
用pyspider爬資料,預設的sqlite3資料庫內都是中文顯示,可是安裝了datagrip之後發現全部變成unicode碼了。於是將資料匯出csv,技術朋友再次出手用python搞定了 大家都知道中文編碼坑比較多,這個記錄下來 #轉檔案還是用程式碼最
41歲阿里工程師:35歲轉管理,真的是必經之路嗎?
阿里妹導讀:墨玦,阿里巴巴 iDST 高階技術專家。博士畢業於北京郵電大學,計算機應用專業,目前主要從事語音技術工程化方面的研發。回顧在阿里的三年時光,他感慨良多,寫下了這篇總結,與大家共勉。
codewars解題筆記 —— 將字串轉駝峰,單詞首字母大寫
題目:Complete the method/function so that it converts dash/underscore delimited words into camel casing. The first word within the output s
python3.6:學會兩行程式碼,深刻理解列表
一碼友問我兩行程式碼如何執行的,看似挺簡單,但涉及的知識點還挺多,值得細細分析,所以和大家分享。這兩行程式碼為: a = [0, 1, 2, 3, 4, 5] a[0:3],a[5]=[[2,3,4,5],7] #重點介紹這句程式 執行完畢上面兩行程式之後,大家猜猜,a的結
解決URLencode編碼時將空格轉成+的問題
根據官方文件:1string urlencode(string $str)此函式便於將字串編碼並將其用於 URL 的請求部分,同時它還便於將變數傳遞給下一頁。返回字串,此字串中除了-_. 之外的所有非字母數字字元都將被替換成百分號(%)後跟兩位十六進位制數,空格則編碼為加號(