Я пытаюсь извлечь атрибуты с веб-сайта, но получить пустые элементы.
Использование этого кода в оболочке Srapy:
fetch('https://www.chronext.de/breitling/galactic/w7234812-a785-249s-a12d-4/C79467')
from w3lib.html import remove_tags
[remove_tags(w).strip() for w in response.xpath('//table[@class="compact margin-top-half"][1]/tr/td[2]/text()').extract()]
Я получаю:
['C77316', '279175', 'Damen', 'Automatik', '28\xa0mm', 'Roségold', 'Roségold', 'Saphirglas', '', '', '', '2018', 'Originale Box', 'Originale Hersteller Papiere', 'CHRONEXT Echtheitszertifikat', 'Zusätzlich zur Herstellergarantie erhalten Sie eine 2-jährige CHRONEXT Garantie ab Kaufdatum.']
Что удивительно, так как я нацелился на второй блок с / div [2], но вместо этого получил элементы из обоих блоков.
Я также попробовал это:
[x.strip() for x in response.xpath('//div[@class="row force-inside-container-behavior"]/div[2]/table/tr/td[2]/text()').extract()]
, который возвращаетthis:
['', '', '', '2018', 'Originale Box', 'Originale Hersteller Papiere', 'CHRONEXT Echtheitszertifikat', 'Zusätzlich zur Herstellergarantie erhalten Sie eine 2-jährige CHRONEXT Garantie ab Kaufdatum.']
Моя цель - получить словарь пар ключ / значение.Например, «состояние» = «хорошо».Первый блок был без проблем, затем я подумал, что давайте раздельно получим второй блок и расширим список.
Ключ не проблема, но значение, которое я пытаюсь получить, возвращает те 3-4 пустых элемента, которыеЯ приведу порядок в синхронизацию, как только я соберу ключ / значение позже.Удаление 3 пустых полей может быть не лучшим вариантом, так как другая страница на этом сайте может немного отличаться.
Как получить только один элемент на ключ-значение?