scrapy使用extract方法获取文本时出现\xa0 、 \u3000

\xa0 是不间断空白符 &nbsp

我们通常所用的空格是 \x20 ,是在标准ASCII可见字符 0x20~0x7e 范围内。
而 \xa0 属于 latin1 (ISO/IEC_8859-1)中的扩展字符集字符,代表空白符nbsp(non-breaking space)。
latin1 字符集向下兼容 ASCII ( 0x20~0x7e )。通常我们见到的字符多数是 latin1 的,比如在 MySQL 数据库中。

这里也有一张简陋的Latin1字符集对照表。

\u3000 是全角的空白符

处理方法

.extract_first().replace(u'\xa0', u' ').strip().encode('utf-8','replace')

BeautifulSoup下Unicode乱码解决

s.replace(u'\xa0', u'').encode('utf-8')
posted @ 2022-06-15 20:47  下个ID见  阅读(157)  评论(0)    收藏  举报