【问题标题】:Scrapy:: How to use "not" in CSS selector to skip elementsScrapy:: 如何在 CSS 选择器中使用“not”来跳过元素
【发布时间】:2017-06-07 00:11:30
【问题描述】:

在scrapy中是否可以使用这样的选择器?

我尝试关注但索引超出范围错误

response.css('.breadcrumbs > ul > li:not[class^="home"]').extract()

【问题讨论】:

    标签: css-selectors scrapy


    【解决方案1】:

    您应该将not 表达式括在这样的括号中

    response.css('.breadcrumbs > ul > li:not([class^="home"])').extract()
    

    【讨论】:

    • 你读过这个问题吗?在 css 选择器中的“非”语法的上下文中,答案到底有什么错误? not 表达式应该包含在括号中是错误的吗?或者可能是你的“应该使用”表达神奇地不需要它?
    • 对不起,我的错。我的意思是:当您使用^= 时,您说的是“ 开头”,因此最好将:not*= 一起使用,这意味着“包含”。所以如果你用你有的东西不起作用,你也可以尝试使用::not([class*="home"])。 (这对我有用。)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多