python - 跳过转义序列字符 Python Scrapy
问题描述
我正在抓取一个网站,但我在输出中得到了转义序列字符。字符如下:
\r \n \t \xa
我尝试了 .split() 方法,但此方法的问题是当scrapy crawler 找不到单个值时,它不会抓取任何值并移动到下一次迭代。
绕过这些字符的最佳方法是什么?
以下是输出:
解决方案
Pythonre.sub
可以做到这一点。
>>> import re
>>> re.sub(r'\s+', ' ', "\t \xa0")
' '
>>> re.sub(r'\s+', ' ', "\t \xa0 py \t \t \xa0 thon")
' py thon'
>>> # You can then use str.strip to get rid of any surrounding spaces
>>> re.sub(r'\s+', ' ', "\t \xa0 py \t \t \xa0 thon").strip()
'py thon'
推荐阅读
- javascript - HTML 网格在我的网页右侧创建了令人讨厌的边距
- javascript - 如何在 node.js 和 mysql 中使用多个 SQL
- jenkins - Jenkins Job 状态为 SUCCESS 但 Ansible playbook 失败
- go - golang sync.Map Range 函数线程安全吗?
- javascript - 在 MediaRecorder 中的多个 webrtc 流之间交换
- java - 我想让两个数组具有相同的值
- python - Python - 内部类的哪些参数?
- java - 对于不同的屏幕尺寸,这是调整文本大小(在 TextView 中)的最佳做法
- model-checking - 带有旋转的 Promela 模型 - 重复消息和损坏消息
- android - 如何仅在 tablayout 的底部显示阴影?