简体   繁体   English

UnicodeDecodeError:'ascii'编解码器无法解码位置0的字节0xa0:序数不在范围内(128)

[英]UnicodeDecodeError: 'ascii' codec can't decode byte 0xa0 in position 0: ordinal not in range(128)

I'm working on scraping Oregon Teacher License data for a project I'm doing. 我正在为正在执行的项目抓取俄勒冈州教师许可数据 Here's my code: 这是我的代码:

educ_employ = tree.xpath('//tr[15]//td[@bgcolor="#A9EDFC"]//text()')
print educ_employ
#[u'Jefferson Middle School\xa0\xa0(2013 - 2014)']

I want to strip the the "\\xa0". 我要剥离“ \\ xa0”。 This is my code: 这是我的代码:

educ_employ = ([s.strip('\xa0') for s in educ_employ])
print educ_employ
UnicodeDecodeError: 'ascii' codec can't decode byte 0xa0 in position 0: ordinal not in range(128)

I tried this : 我尝试了这个

educ_employ = ([s.decode('utf-8').strip('\xa0') for s in educ_employ])
print educ_employ
UnicodeDecodeError: 'ascii' codec can't decode byte 0xa0 in position 0: ordinal not in range(128)

And this :

import sys

reload(sys)
sys.setdefaultencoding('utf-8')

educ_employ = tree.xpath('//tr[15]//td[@bgcolor="#A9EDFC"]//text()')
educ_employ = ([s.decode('utf-8').strip('\xa0') for s in educ_employ])
print educ_employ
>>>

I didn't get an error with the last one but I also didn't get an output. 我没有遇到最后一个错误,但是也没有得到输出。 I'm using Python 2.7. 我正在使用Python 2.7。 Does anyone know how to fix this? 有谁知道如何解决这一问题?

You are mixing up unicode objects and str objects. 您正在混合unicode对象和str对象。 educ_employ is a unicode , but '\\xa0' is a str . educ_employunicode ,但是'\\xa0'str

Additionally, .strip() only removes characters from the beginning and end of the string, not the middle. 此外, .strip()仅从字符串的开头和结尾删除字符,而不从中间删除字符。 Try .replace() instead. 尝试使用.replace()代替。

Try: 尝试:

educ_employ = [u'Jefferson Middle School\xa0\xa0(2013 - 2014)']
educ_employ = [s.replace(u'\xa0', u'') for s in educ_employ]
print educ_employ

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 UnicodeDecodeError:“ascii”编解码器无法解码 position 0 中的字节 0xa7:不在序数范围内 (128) - UnicodeDecodeError: 'ascii' codec can't decode byte 0xa7 in position 0: not in ordinal range (128) python 3.x在读取文件时出错。 'ascii'编解码器无法解码位置3582上的字节0xa0:序数不在范围内(128) - python 3.x have an error while reading a file. 'ascii' codec can't decode byte 0xa0 in position 3582: ordinal not in range(128) UnicodeDecodeError:'ascii'编解码器无法解码位置0的字节0xdb:序数不在范围内(128) - UnicodeDecodeError: 'ascii' codec can't decode byte 0xdb in position 0: ordinal not in range(128) UnicodeDecodeError:'ascii'编解码器无法解码位置0的字节0xe0:序数不在范围内(128) - UnicodeDecodeError : 'ascii' codec can't decode byte 0xe0 in position 0: ordinal not in range(128) UnicodeDecodeError:'ascii'编解码器无法解码位置0中的字节0xe2:序号不在范围内(128) - UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 0: ordinal not in range(128) UnicodeDecodeError:'ascii'编解码器无法解码位置23的字节0xc3:序数不在范围内(128) - UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 23: ordinal not in range(128) UnicodeDecodeError:'ascii'编解码器无法解码位置11597中的字节0xff:序数不在范围内(128) - UnicodeDecodeError: 'ascii' codec can't decode byte 0xff in position 11597: ordinal not in range(128) Netmiko 错误:UnicodeDecodeError:“ascii”编解码器无法解码位置 0 中的字节 0xff:序号不在范围内(128) - Netmiko error: UnicodeDecodeError: 'ascii' codec can't decode byte 0xff in position 0: ordinal not in range(128) UnicodeDecodeError:“ascii”编解码器无法解码位置 13 中的字节 0xe2:序号不在范围内(128) - UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 13: ordinal not in range(128) UnicodeDecodeError:'ascii'编解码器无法解码位置0中的字节0xe7:序号不在范围内(128) - UnicodeDecodeError: 'ascii' codec can't decode byte 0xe7 in position 0: ordinal not in range(128)
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM