Мы говорили о том, как парсить информацию с сайта (Newegg, B&H и т. д.) через Python Scrapy. Сегодня мы собираемся использовать сервис zyte для развертывания ваших веб-скриптов в Интернете, чтобы вы могли автоматизировать процесс через браузер.
Шаги
2. Установите Scrapy и библиотеку shub (я использую PyCharm для установки пакетов ниже).
3. Создайте проект Scrapy (папку) с именем tutorial. (см. справка)
scrapy startproject tutorial
4. Создайте py-файл с именем quotes_spider.py в tutorial/spiders. Поместите следующие скрипты в файл quotes_spider.py.
from pathlib import Path import scrapy class QuotesSpider(scrapy.Spider): name = "quotes" def start_requests(self): urls = [ 'https://quotes.toscrape.com/page/1/', 'https://quotes.toscrape.com/page/2/', ] for url in urls: yield scrapy.Request(url=url, callback=self.parse) def parse(self, response): page = response.url.split("/")[-2] filename = f'quotes-{page}.html' Path(filename).write_bytes(response.body) self.log(f'Saved file {filename}') class QuotesSpider2(scrapy.Spider): name = "quotes2" start_urls = [ 'https://quotes.toscrape.com/page/1/', 'https://quotes.toscrape.com/page/2/', ] def parse(self, response): for quote in response.css('div.quote'): yield { 'text': quote.css('span.text::text').get(), 'author': quote.css('small.author::text').get(), 'tags': quote.css('div.tags a.tag::text').getall(), }
5. В Терминале запустите shub login со своими ключами API и идентификатором развертывания. Эту информацию можно найти на вкладке «Код и развертывание» сведений о проекте.
6. После того, как вы развернете его в Интернете, нажмите кнопку «Выполнить». Вы можете выбрать целевых пауков, приоритет и т. д.
7. После завершения процесса очистки вы можете увидеть всю работу, отображаемую в разделе «Завершено».
8. Нажмите на ссылку в поле «элементы», и она направит вас на страницу с подробным описанием товара. На этой странице вы можете просмотреть подробности или экспортировать данные в формате csv, JSON или XML.
Спасибо и наслаждайтесь :)