【问题标题】:Scrapy- Finding the correct CSS selectorsScrapy - 找到正确的 CSS 选择器
【发布时间】:2020-04-19 12:48:00
【问题描述】:
# -*- coding: utf-8 -*-
import scrapy
from ..items import LowesspiderItem


class LowesSpider(scrapy.Spider):
    name = 'lowes'
    #allowed_domains = ['lowes.com']
    start_urls = ['https://www.lowes.com/pd/ZLINE-KITCHEN-BATH-Ducted-Red-Matte-Wall-Mounted-Range-Hood-Common-42-Inch-Actual-42-in/1001440644']

    def parse(self, response):
        items = response.css('.grid-container')
        for product in items:
            item = LowesspiderItem()

        #get product price
            productPrice = product.css('.art-pd-price::text').getall()


            item["productPrice"] = productPrice


            yield item

这是我获得选择器的方法:

在查看网站的 html 时,我仍然对如何找到正确的选择器感到有些困惑。我通过滚动到顶部并找到所有突出显示的项目来找到顶级项目。然后我使用 google chrome 上的 CSS 选择器扩展来查找我想要抓取的特定元素。该程序应该给我回报,但我没有产生任何结果。任何帮助或指导将不胜感激!

【问题讨论】:

  • 现在大多数网站都在使用前端框架,这意味着你可以 * 使用 splash, * 从一些 json 中提取,或者 * 切换到 selenium / puppeteer
  • @pguardiario 也不会拉选择器,我为另一个网站做了那个,蜘蛛工作正常
  • 不,因为如果您查看页面源代码,您会发现它们并不存在。
  • 带有 json.loads
  • 基本不信任元素面板,你得看页面源码。

标签: python css scrapy


【解决方案1】:

所以你错过了商店的位置,所以你只需要添加一个位置 cookie

【讨论】:

    猜你喜欢
    • 2019-06-12
    • 2021-02-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-22
    相关资源
    最近更新 更多