lxml 解析錯誤ValueError

2022-04-29 03:48:07 字數 556 閱讀 6761

一:lxml解析錯誤

html=etree.html(xml)  --報錯的**行

valueerror: unicode strings with encoding declaration are not supported. please use bytes input or xml fragments without declaration.

使用request.get請求響應的資料使用的是

r.text 返回的是str(unicode)

#響應內容的前幾行如下:

<?xml version="1.0" encoding="utf-8"?>

本來是html資料的,但是被設定成了xml的,還設定了'utf-8'編碼
requests.get請求響應,返回content bytes型別

#這個位置可能會有問題(去掉了decode())

return response.content

lxml解析xml檔案

最近在工作中需要從多個xml檔案中選出一些節點合成乙個新的xml檔案,首先想到的使用python自帶的xml.etree.elementtree模組,但是發現合併後的檔案中原來的cdata部分不對,括號和引號都被轉義了,沒有和原來保持一致,elementtree模組解決不了這個問題,我就想會不會有第...

Lxml 解析網頁用法筆記

用python的urllib2庫實現的獲取到網頁資料之後,使用lxml對獲取的網頁進行資料抓取。1.匯入包 from lxml import etree 2.page etree.html html 或者 page etree.html html.decode utf 8 3.對element物件 ...

Python 之lxml解析模組

lxml 是 乙個html xml的解析器,主要的功能是如何解析和提取 html xml 資料。一 lxml示例 1 初步 使用 lxml 的 etree 庫 from lxml import etree text 利用etree.html,將字串解析為html文件 html etree.html ...