Использование scrapy shell часть 2
Table Of Content
- Установка Scrapy - Часть 1
- В этом уроке мы установим Scrapy с нуля
- Jual - Elektronik, Harga Murah - JakartaNotebook.com
- Одной из проблем, с которой мы часто сталкиваемся при покупке электроники, является поиск места для онлайн-шопинга...
- Парсинг данных с помощью Scrapy, часть 3
- В предыдущем уроке мы использовали scrapy shell
Привет, в этом уроке мы будем использовать scrapy shell для парсинга.
В любом случае, перед этим мы создадим приложение из проекта:
Установка Scrapy - Часть 1
В этом уроке мы установим Scrapy с нуля
sulaemanr46.medium.com
В этом уроке мы будем парсить данные с веб-сайта.
Jual - Elektronik, Harga Murah - JakartaNotebook.com
Одной из проблем, с которой мы часто сталкиваемся при покупке электроники, является поиск места для онлайн-шопинга...
Цель - получить данные о названии, URL, цене и изображении из списка продуктов.
Откройте терминал.
scrapy shell
fetch('https://www.jakartanotebook.com/electronic')
При инспектировании элемента мы должны найти шаблон цикла для отображения продуктов.
Мы нашли класс с названием
<div class="product-list">
</div>
Создайте переменную для списка продуктов
products = response.css('div.product-list')
Для получения названия продукта "03CACTUS Ultrasonic Air Humidifier Aromatherapy Oil Diffuser Desain Unik Bentuk Kaktus — H319 — Transparent"
в строке 9 (
<a href="https://www.jakartanotebook.com/03cactus-ultrasonic-air-humidifier-aromatherapy-oil-diffuser-desain-unik-bentuk-kaktus-h319-transparent" title="03CACTUS Ultrasonic Air Humidifier Aromatherapy Oil Diffuser Desain Unik Bentuk Kaktus — H319 — Transparent" class="product-list__title">
03CACTUS Ultrasonic Air Humidifier Aromatherapy Oil Diffuser Desain Unik Bentuk Kaktus — H319 — Transparent</a>
)
title = products.css('a.product-list__title::text').get()
Для получения URL
url = products.css('a.product-list__title').attrib['href']
Для получения цены "Rp. 109.300"
мы нашли в строке 40
"
<span class="product-list__price">
Rp. 109.300</span>
"
products.css('span.product-list__price::text').get()
Для удаления RP
price = products.css('span.product-list__price::text').get().replace('Rp.','')
Для получения URL изображения в строке 4
<div class="product-list__img">
<a href="https://www.jakartanotebook.com/03cactus-ultrasonic-air-humidifier-aromatherapy-oil-diffuser-desain-unik-bentuk-kaktus-h319-transparent" title="03CACTUS Ultrasonic Air Humidifier Aromatherapy Oil Diffuser Desain Unik Bentuk Kaktus — H319 — Transparent">``<img src="https://www.jakartanotebook.com/images/products/104/1020/40919/34/279/3life-ultrasonic-air-humidifier-desain-unik-bentuk-kaktus-transparent-1.jpg" alt="Jual — Elektronik — 03CACTUS Ultrasonic Air Humidifier Aromatherapy Oil Diffuser Desain Unik Bentuk Kaktus — H319 — Transparent">``</a>
<div class="product-list__discount">
22%</div>
</div>
Для получения значения src изображения мы можем использовать команду
img = products.css('div.product-list__img img::attr(src)').get()
Урок по использованию scrapy shell завершен, в следующем уроке мы получим все данные и экспортируем их в формате CSV.
Увидимся в следующем уроке.
Парсинг данных с помощью Scrapy, часть 3
В предыдущем уроке мы использовали scrapy shell
sulaemanr46.medium.com