我在Windows Vista 64位上使用Python.org版本2.7 64位来运行scrapy。我使用以下内容从我的屏幕输出中删除\ n \ r \ n字符和html标记:
body = response.xpath("//p").extract()
body2 = str(body)
body3 = re.sub(r'\s{2,}', ' ', body2)
print remove_tags(body3)
这会删除HTML特殊字符,但不会从最终输出中删除\ r \ n字符。我做错了吗?
由于
答案 0 :(得分:1)
是的,因为您不确定文档包含哪种类型的换行符,所以应将模式替换为:
\s{2,}|[\r\n]
事实上,大多数情况下,换行符可以是CRLF (Windows约定),或者只有LF (unix约定)(这可能与您当前的文档有关) 。)或仅CR (对于旧苹果OS)
答案 1 :(得分:1)
(\\[rn]|\s){2,}
尝试一下,让我知道这是否成功。