python - 分割连字符分隔单词,中间有空格 | Python

标签 python scrapy

我想分割以逗号、分号或连字符(前面带有空格)分隔的单词。
其原因是我正在抓取的网站结构不一致 Scrapy .
到目前为止,我可以使用以下代码分割逗号或分号分隔的单词:

for i in response.xpath('//meta[@name="keywords"]/@content').extract():
        if ',' or ';' in i:
            for k in i.split(',') or i.split(';'):
                keywords.append([k.strip()])
        else:
            keywords.append([i.strip()])

如果单词像这样分开:

  • 关键字1、关键字2、关键字3
  • 关键字1;关键字2;关键字3

但有时关键字也存储如下:

关键字1 - 关键字2 - 关键字3

我不知道如何正确分割它们,因为连字符之间的空格让我头疼:)。非常感谢您的帮助!

最佳答案

您可能想要使用正则表达式。 re.split('\s*-\s*', mystring) 应该可以完成这项工作。

关于python - 分割连字符分隔单词,中间有空格 | Python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59004714/

相关文章:

python - 循环队列结构(数组支持)

python - 有人在 Python/其他语言中使用 meta-meta-classes/meta-meta-meta-classes 吗?

python - 无法从 Python 3.6 上的日期时间模块导入时区

python - 局部变量可能在赋值前被引用

python - Scrapy 分页不起作用并优化了蜘蛛

python - 在 10.9 Mavericks 上安装 Scrapy 时遇到问题

python - 如何在 scrapy 爬虫中使用用户名/密码进行身份验证?

Python:随着时间的推移将相同的对象分配给相同的标签

python - 一个蜘蛛可以处理多个项目和多个管道吗?

scrapy - scrapy项目中如何管理多个spider