сбор статистики для сайта высшего сообщества - PullRequest
0 голосов
/ 27 февраля 2019

Я пытаюсь получить статистику по названию, цене и Upvotes / Downvotes с веб-сайта высшего сообщества с помощью библиотеки Scrapy в Python.

import scrapy


class SupremeSpider(scrapy.Spider):
    name = "Supreme"
    start_urls = [
        'https://www.supremecommunity.com/season/spring-summer2019/droplist/2019-02-25/'
    ]

    def parse(self, response):
        for data in response.css('div.card-details'):
            yield {
                'title': data.xpath("//h2/text()").getall(),
                'price': data.css('span.label-price::text').get()     
                #'upvotes': data.xpath("//p/text()").getall()
                #'downvotes': quote.css('div.tags a.tag::text').getall(),
            }

, когда я запускаю scrapy crawl Supreme вCMD:

результат выглядит следующим образом:

2019-02-27 14:19:09 [scrapy.core.scraper] ОТЛАДКА: Соскоб с <200 <a href="https://www.supremecommunity.com/season/spring-summer2019/droplist/2019-02-25/" rel="nofollow noreferrer">https://www.supremecommunity.com/season/spring-summer2019/droplist/2019-02-25/> {'title': ['Цветочный скейтборд с аэрографом', 'Формула Crewneck', 'Числовой кодовый замок Supreme® / Master Lock®', 'Бутылка для воды Supreme® / SIGG ™ CYD 1.0L', 'Сумка на талии', 'Тройник Creeper ',' Shatter Tee ',' БЕСПЛАТНЫЙ ПОДАРОК ​​ шапочка для душа ',' Кристофер Уокен Кинг Оф Нью-Йорк Ти ',' Полотенца для посуды (набор из 3) ',' Металлическая зажигалка, кобура ',' BondedЛоготип Puffy Jacket »,« Сумка на плечо »,« Толстовка с капюшоном от Chenille »,« Рюкзак »,« Overdyed Beanie »,« Футболка с фруктами »,« Knot Tee »,« Мешочек для органайзера »,« Supreme® / Hanes® Leopard Boxer Briefs »(2 шт.), 'Duffle Bag', 'The Real Shit L / S Tee', 'Бейсбольная майка Red Rum', 'боксерские трусы Supreme® / Hanes® (4 шт.)', 'Kids Tee ',' Надувная подушка Toy Uzi ',' Толстовка Apple с капюшоном ',' Брелок Spotlight ',' Носки для экипажа Supreme® / Hanes® (4 упаковки) ',' Куртка с тесьмой ',' Фронт Тройник ',' Скейтборд с фруктами ', Тройка Тяжелых Товаров, Леда и Лебединая Тройка, Военная Кепка лагеря, Кожаная Куртка Университета, Лоскутная Куртка Харрингтона, Формула Спортивных Штанов, Тройники Supreme® / Hanes® Tagless (3 шт)',' I Make Shit Happen Pin ',' Скейтборд Leda And The Swan ',' Original Sin Tee ',' Топ Clouds L / S ',' Рабочая рубашка с логотипом Racing ',' Шелковая камуфляжная рубашка ',' Золотая подвеска Libertad ', 'Керамическая коробка Blood Lust', 'Куртка-кроссовка', 'Кардиган из лоскутного мохера', 'Безрукавки Leopard Supreme® / Hanes® (2 шт)', 'Толстовка с капюшоном Set In Logo', 'Supreme® / Spitfire® ClassicКолеса (набор из 4 штук) »,« Футболка со средним пальцем и миром »,« Карманная футболка S / S »,« Грузовик Supreme® / Independent® »,« 6-панельная GORE-TEX S-Logo »,« Свитер Tag Logo »',' Tech L / S Tee ',' Толстовка с капюшоном Shears ',' Pantwork Cargo Pant ',' Stone Washed Slim Jean ',' Text Stripe New Era® ',' FuzzyPile Trucker Jacket ',' D-Ring Trench Coat ',' Multi-Stripe S / S Top ',' Piping Track Pant ',' Work Pant ',' Tag Logo Beanie ',' Corduroy Compact Logo 6-Panel ',' ОксфордРубашка »,« Спортивные штаны Set In Logo »,« Черная тонкая джинсовая ткань с каменным выцветанием »,« Рубашка в клетку Rose Buffalo »,« Лоскутная колпак в стиле пейсли »,« Топ L / S в полоску «Пейсли», «Короткий пушистый ворс», «Tie Dye Ripstop»Camp Cap ',' Брюки с тесьмой ',' Washed Regular Jean ',' Rigid Slim Jean ',' World 5-Panel ',' Подпись Script Logo Camp Camp ',' Motherfucker 6-Panel '],' цена ':'\ n
$ 48 / £ 46 \ n
'}

Попытка получить формат, похожий на этот:

{title: Аэрограф Цветочный скейтборд, цена:48 долларов США / 46 фунтов стерлингов, голосов: 14218, голосов: 1034}

1 Ответ

0 голосов
/ 27 февраля 2019

Вам необходимо использовать соответствующий относительный XPath при использовании вложенных селекторов, в противном случае он извлечет из ответа весь :

'title': data.xpath(".//h2/text()").get(),

См. Документацию: https://docs.scrapy.org/en/latest/topics/selectors.html#working-with-relative-xpaths

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...