成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

lxml處理xml時(shí)的字符編碼問題

liuhh / 866人閱讀

摘要:為了簡化問題,就把的內(nèi)容簡化為如下的形式中文,就是任性它的為,其中的節(jié)點(diǎn)有一個(gè)為中文字符使用提取節(jié)點(diǎn)的值時(shí)出現(xiàn)了如下的異常此時(shí)對應(yīng)的腳本為中文,就是任性不過簡化之前,報(bào)的是另外一個(gè)異常不論異常是哪一個(gè),猜測還是和字符的編碼形式有關(guān)。

為了簡化問題,就把xml的內(nèi)容簡化為如下的形式:


它的encoding為gbk,其中的節(jié)點(diǎn)有一個(gè)為中文字符
使用lxml提取節(jié)點(diǎn)的值時(shí)出現(xiàn)了如下的異常

lxml.etree.XMLSyntaxError: Extra content at the end of the document

此時(shí)對應(yīng)的Python腳本為:

tst = u""
for event,element in etree.iterparse(BytesIO(tst.encode("utf-8"))):
    print("%s, %s" % (element.tag, element.text))

不過簡化之前,報(bào)的是另外一個(gè)異常

lxml.etree.XMLSyntaxError: input conversion failed due to input error, bytes 0x8B 0x2C 0xE6 0x9D

不論異常是哪一個(gè),猜測還是和字符的編碼形式有關(guān)。
經(jīng)過各種嘗試無果,后來在stackoverflow上看到這篇文章,文中提到的問題和xml中的encoding值有關(guān),嘗試了增加了一段代碼

tst = u""
tst = tst.replace("encoding="gbk"", "encoding="utf-8"")
for event,element in etree.iterparse(BytesIO(tst.encode("utf-8"))):
    print("%s, %s" % (element.tag, element.text))

增加了一個(gè)替換的語句,將之前的encoding="gbk"替換成encoding:"utf-8"
于是終于得到了結(jié)果:

da, 中文,就是任性
DOCUMENT, None

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/110327.html

相關(guān)文章

  • lxml處理xml時(shí)的字符編碼問題

    摘要:為了簡化問題,就把的內(nèi)容簡化為如下的形式中文,就是任性它的為,其中的節(jié)點(diǎn)有一個(gè)為中文字符使用提取節(jié)點(diǎn)的值時(shí)出現(xiàn)了如下的異常此時(shí)對應(yīng)的腳本為中文,就是任性不過簡化之前,報(bào)的是另外一個(gè)異常不論異常是哪一個(gè),猜測還是和字符的編碼形式有關(guān)。 為了簡化問題,就把xml的內(nèi)容簡化為如下的形式: 它的encoding為gbk,其中的節(jié)點(diǎn)有一個(gè)為中文字符 使用lxml提取節(jié)點(diǎn)的值時(shí)出現(xiàn)了如下的...

    Jackwoo 評論0 收藏0
  • 爬蟲問題總結(jié)

    摘要:編碼我們發(fā)現(xiàn),中有時(shí)候存在中文,這是就需要對進(jìn)行編碼??梢韵葘⒅形霓D(zhuǎn)換成編碼,然后使用方法對參數(shù)進(jìn)行編碼后傳遞。 本文檔對日常學(xué)習(xí)中用 python 做數(shù)據(jù)爬取時(shí)所遇到的一些問題做簡要記錄,以便日后查閱,部分問題可能因?yàn)檎J(rèn)識不到位會(huì)存在一些誤解,敬請告知,萬分感謝,共同進(jìn)步。 估算網(wǎng)站規(guī)模 該小節(jié)主要針對于整站爬取的情況。爬取整站之前,肯定是要先對一個(gè)網(wǎng)站的規(guī)模進(jìn)行估計(jì)。這是可以使用g...

    nanfeiyan 評論0 收藏0
  • Python3網(wǎng)絡(luò)爬蟲實(shí)戰(zhàn)---29、解析庫的使用:BeautifulSoup

    摘要:解析器在解析的時(shí)候?qū)嶋H上是依賴于解析器的,它除了支持標(biāo)準(zhǔn)庫中的解析器,還支持一些第三方的解析器比如,下面我們對支持的解析器及它們的一些優(yōu)缺點(diǎn)做一個(gè)簡單的對比。 上一篇文章:Python3網(wǎng)絡(luò)爬蟲實(shí)戰(zhàn)---28、解析庫的使用:XPath下一篇文章:Python3網(wǎng)絡(luò)爬蟲實(shí)戰(zhàn)---30、解析庫的使用:PyQuery 前面我們介紹了正則表達(dá)式的相關(guān)用法,但是一旦正則寫的有問題,可能得到的就...

    MockingBird 評論0 收藏0
  • Python_爬蟲基礎(chǔ)

    摘要:并不是所有爬蟲都遵守,一般只有大型搜索引擎爬蟲才會(huì)遵守。的端口號為的端口號為工作原理網(wǎng)絡(luò)爬蟲抓取過程可以理解為模擬瀏覽器操作的過程。表示服務(wù)器成功接收請求并已完成整個(gè)處理過程。 爬蟲概念 數(shù)據(jù)獲取的方式: 企業(yè)生產(chǎn)的用戶數(shù)據(jù):大型互聯(lián)網(wǎng)公司有海量用戶,所以他們積累數(shù)據(jù)有天然優(yōu)勢。有數(shù)據(jù)意識的中小型企業(yè),也開始積累的數(shù)據(jù)。 數(shù)據(jù)管理咨詢公司 政府/機(jī)構(gòu)提供的公開數(shù)據(jù) 第三方數(shù)據(jù)平臺(tái)購買...

    ixlei 評論0 收藏0
  • 關(guān)于爬蟲解析數(shù)據(jù)的4種方式

    摘要:大奉打更人賣報(bào)小郎君這個(gè)人仙太過正經(jīng)言歸正傳從紅月開始黑山老鬼穩(wěn)住別浪跳舞二解析數(shù)據(jù)是一個(gè)可以從或文件中提取數(shù)據(jù)的庫。 目錄 一、XPath解析數(shù)據(jù) 1、XPath解析數(shù)據(jù) 2、XML的樹形結(jié)構(gòu) 3、使用XPath選取節(jié)點(diǎn) 4、課堂案例 - 爬取起點(diǎn)小說網(wǎng) 二、BeautifulSoup解析...

    newtrek 評論0 收藏0

發(fā)表評論

0條評論

liuhh

|高級講師

TA的文章

閱讀更多
最新活動(dòng)
閱讀需要支付1元查看
<