['\xa0\xa0\xa0\xa0\ufeff\r', '\r', '\xa0\xa0\xa0\xa0九月初一,周宣带着来福、三痴出了江州城南门,往洪州方向而去,昨夜学习茶道时他已经向静宜仙子告过假,当时林涵蕴不在,静宜仙子淡淡的没什么表地'\xa0\xa0\xa0\xa0在路上三日,越过马回岭,过德安、永修,来到号称唐国西南第一大城的洪州。\r', '\r']
使用etree.HTML().xpath()爬出来的内容是一个列表,但是其中包含了这些符号,使用了多种方式都没有解决。如何只提取其中的文本?
ls = ['\xa0\xa0\xa0\xa0\ufeff\r', '\r',
'\xa0\xa0\xa0\xa0九月初一,周宣带着来福、三痴出了江州城南门,往洪州方向而去,昨夜学习茶道时他已经向静宜仙子告过假,当时林涵蕴不在,静宜仙子淡淡的没什么表地\xa0\xa0\xa0\xa0在路上三日,越过马回岭,过德安、永修,来到号称唐国西南第一大城的洪州。\r',
'\r']
res = ''.join(ls).replace('\xa0', '').replace('\ufeff', '').replace('\r', '')
print(res)
有帮助,望采纳!
估计题主是要爬小说。。。那看需求的话
import re
arr = ['\xa0\xa0\xa0\xa0\ufeff\r', '\r', '\xa0\xa0\xa0\xa0九月初一,周宣带着来福、三痴出了江州城南门,往洪州方向而去,昨夜学习茶道时他已经向静宜仙子告过假,当时林涵蕴不在,静宜仙子淡淡的没什么表地\xa0\xa0\xa0\xa0在路上三日,越过马回岭,过德安、永修,来到号称唐国西南第一大城的洪州。\r', '\r']
#\u4e00-\u9fa5 汉字范围
#\u0009-\u000D 制表符、换行、换页、回车等
#\u0020-\u007E 空格、数字、字母、常规可见符号等
#\uFF00-\uFFEF 半宽韩文字母范围:\uFF00-\uFFEF
print(re.sub(u"([^\u4e00-\u9fa5\u0009-\u000D\u0020-\u007E\uFF00-\uFFEF])",""," ".join(arr)))
执行结果如图
一般以上字符够用了,其他有特殊需求的自行补充字符码范围即可
newStr=[]
str = ['\xa0\xa0\xa0\xa0\ufeff\r', '\r', '\xa0\xa0\xa0\xa0九月初一,周宣带着来福、三痴出了江州城南门,往洪州方向而去,昨夜学习茶道时他已经向静宜仙子告过假,当时林涵蕴不在,静宜仙子淡淡的没什么表地\xa0\xa0\xa0\xa0在路上三日,越过马回岭,过德安、永修,来到号称唐国西南第一大城的洪州。\r', '\r']
for i in str:
a = i.strip().replace(u'\u3000', u' ').replace(u'\xa0', u' ').replace(u'\ufeff', u' ')
if a.strip() != '':
newStr.append(a)
print(newStr)