【问题标题】:Normalize space for list items and extract as array using Scrapy规范化列表项的空间并使用 Scrapy 提取为数组
【发布时间】:2015-11-11 18:07:16
【问题描述】:

我正在寻找一种将列表项提取为数组的有效方法。他们需要去除任何额外的空间。目前我正在这样做:

actions = []
actions_list = sel.xpath('//div[label="Actions Taken"]/article/div/ul')
action_items = actions_list.xpath('li')
for a in action_items:
    actions.append(a.xpath('normalize-space(text())')[0].extract())

actions 数组存储在我的数据库中。在 Scrapy 中有没有更有效的方法来做到这一点?

【问题讨论】:

  • 可以分享部分html结构吗?这看起来只能用 xpath 完成
    • 信息交换
    • 指示合规
  • 你所说的你想要的最好用 .strip() 字符串方法来实现。 normalize-whitespace() 还用单个空格替换空格序列。

标签: python scrapy scrapy-spider parsel


【解决方案1】:

下面的 xpath 应该和你做的一样:

sel.xpath('normalize-space(//div[label="Actions Taken"]/article/div/ul/li/text()[0])').extract()

但这取决于页面

【讨论】:

    猜你喜欢
    • 2016-02-27
    • 1970-01-01
    • 2021-03-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-13
    • 2015-06-10
    • 1970-01-01
    相关资源
    最近更新 更多