我正在为我正在做的一个项目抓取Oregon Teacher License data。我的代码是:
educ_employ = tree.xpath('//tr[15]//td[@bgcolor="#A9EDFC"]//text()')
print educ_employ
#[u'Jefferson Middle School\xa0\xa0(2013 - 2014)']
我想把“\xa0”去掉。这是我的代码:
^{pr2}$我试了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)
和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
>>>
我没有得到上一个错误,但我也没有得到一个输出。我使用的是python2.7。有人知道怎么解决这个问题吗?在
您混淆了}是
unicode
对象和str
对象。educ_employ
是unicode
,但是{str
。在另外,
.strip()
只删除字符串开头和结尾的字符,而不是中间的字符。请改为尝试.replace()
。在尝试:
相关问题 更多 >
编程相关推荐