pyspider爬网页出现中文乱码的解决办法

为什么会出现乱码呢?按照binux的说法

这就是 lxml 的蛋疼之处,给它 unicode 它有的时候它不认,给它 bytes 它又处理不好

方法1:

response.content = (response.content).decode('utf-8') #目标站是 utf-8 编码

方法2:

response.content = response.content.decode('gbk', errors='ignore')#目标站是gbk

方法3:(binux的方案)

import pyquery
doc = pyquery.PyQuery(response.text)

方案3的好处是,不必知道源站编码,而直接由pyquery来接管。

猜你喜欢

转载自www.cnblogs.com/alpiny/p/10773701.html