【问题标题】:scraping css values using scrapy framework使用 scrapy 框架抓取 css 值
【发布时间】:2016-09-02 18:50:46
【问题描述】:

有没有办法在使用 python scrapy 框架或使用 php 抓取的同时抓取 css 值。 任何帮助将不胜感激

【问题讨论】:

  • Google 是你的朋友
  • 请使用 google 查找此类内容,如果您在实施过程中遇到任何错误,请使用本网站。

标签: python scrapy


【解决方案1】:

scrapy.Selector 允许您使用 xpath 提取 HTML 元素的属性,包括 CSS。

例如https://github.com/okfde/odm-datenerfassung/blob/master/crawl/dirbot/spiders/data.py#L83

(查看该代码,了解它如何适合整个scrapy spider)

如果你不需要网页爬取,只需要解析html,你可以在python中直接从lxml中使用xpath。另一个例子:

https://github.com/codeformunich/feinstaubbot/blob/master/feinstaubbot.py

最后,要从 xpath 获取 css,我只知道如何通过 css=element.attrib['style'] - 这为您提供了您进一步拆分的样式属性内的所有内容,例如css.split(';') 然后每个都是':'。

如果有人有更好的建议,我不会感到惊讶。一点点知识就足以进行大量抓取,这就是我根据以前的项目处理它的方法。

【讨论】:

    【解决方案2】:

    是的,请查看selectors 的文档,基本上你有两种方法response.xpath() 用于xpathresponse.css() 用于css 选择器。例如,要获取标题的文本,您可以执行以下任何操作:

    response.xpath('//title/text()').extract_first()
    response.css('title::text').extract_first()
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-05-26
      • 2021-08-02
      • 1970-01-01
      • 1970-01-01
      • 2022-12-07
      • 1970-01-01
      • 2013-05-09
      相关资源
      最近更新 更多