Название и логотип логотипа Python Scrapy Scrape - PullRequest
0 голосов
/ 01 октября 2019

У меня есть Python Scrap - скребок, используемый для очистки сайта электронной коммерции, в то время как он не может очистить название логотипа бренда - и URL-адрес изображения логотипа бренда - мне не нужно загружать реальный логотип - предыдущий рабочий код

        l.add_xpath("manufacturer", ".//img[contains(@class, 'product-brand-logo')]/@src")
        l.add_xpath("manufacturer_logo_image_url", ".//img[contains(@class, 'product-brand-logo')]/@src")

Исходный код этого раздела с сайта:

<div class="product-price-details">
<div class="product-details">
<div class="product-brand-logo visible-xs visible-sm product-brand-logo--flex">
<a href="/vogue/_/a33-1" manual_cm_sp="PDP%20brand%20click-_-Vogue-_-D161">
<img class="product-brand-logo__image " data-src="https://media.testdom.com/asset/en/brand/large/vogue.jpg" alt="Vogue" title="Vogue" />
</a>
<div class="js-tooltip product-brand-logo__tooltip" data-tooltip="true">
<a href="/vogue/_/a33-1" manual_cm_sp="PDP%20brand%20click-_-Vogue-_-D161">
Browse our full Vogue range</a>

Может кто-нибудь помочь исправить предыдущий код, который работал до сих пор - чтобы отразить изменения, внесенные на сайте

Когда работает скребок, ошибки не отображается - он просто не очищает необходимые данные, а столбцы для обоих пустые

Спасибо

1 Ответ

1 голос
/ 01 октября 2019

Вы, конечно, можете поцарапать логотип производителя через:

l.add_css('manufacturer_logo_image_url', '.product-details .product-brand-logo .product-brand-logo__image::attr(data-src)')

Но я не уверен, почему в предыдущем примере manufacturer был соскоблен с изображения src. Если вам нужно название производителя, получите его из названия изображения:

l.add_css('manufacturer', '.product-details .product-brand-logo .product-brand-logo__image::attr(title)')
...