DeviantArt выделяется как крупнейшая социальная платформа для цифровых художников и любителей искусства. С более чем 60 миллионами участников, которые ежедневно делятся десятками тысяч произведений искусства, это лучшее место для изучения и загрузки разнообразных творений, от цифровых картин до обоев, пиксельной графики, аниме и кадров из фильмов.
Однако ручной сбор тысяч точек данных с веб-сайтов может занять очень много времени. Вместо того, чтобы вручную копировать информацию, мы автоматизируем процесс с помощью языков программирования, таких как Python.

Скрапинг DeviantArt дает нам возможность взглянуть на различные стили искусства, увидеть, что в тренде, и собрать свою коллекцию любимых картинок. Речь идет не только о наслаждении искусством; мы также можем узнать о нем больше.
В этом руководстве мы будем использовать Python, дружественный язык программирования. А чтобы помочь нам с скрейпингом, у нас есть Crawlbase Crawling API – удобный инструмент, который значительно упрощает получение данных из Интернета. Вместе Python и Crawlbase API упрощает изучение и коллекционирование цифрового искусства.
Оглавление
- Структура страницы поиска DeviantArt
- Зачем копировать изображения с DeviantArt?
- Установка Python и библиотек
- получение Crawlbase API ключ
- Выбор среды разработки IDE
- Технические преимущества Crawlbase Crawling API
- Отправка запроса с Crawling API
- Время и формат ответа API
- Crawling API Параметры
- Бесплатная пробная версия, стратегия тарификации и ограничение скорости
- Crawlbase Библиотека Python
- Импорт необходимых библиотек
- Создание URL для поиска DeviantArt
- Выполнение запросов API с помощью Crawlbase Crawling API для извлечения HTML
- Запуск вашего скрипта
- Понимание пагинации в DeviantArt
- Изменение запросов API для нескольких страниц
- Обеспечение эффективной обработки страниц
- Проверка страницы поиска DeviantArt на наличие селекторов CSS
- Использование селекторов CSS для извлечения URL-адресов изображений
- Хранение извлеченных данных в базе данных CSV и SQLite
- Использование Python для загрузки изображений
- Организация загруженных изображений
Понимание веб-сайта DeviantArt
DeviantArt — это яркое и обширное онлайн-сообщество, которое служит убежищем для художников, как опытных, так и начинающих. Запущенный в 2000 году, DeviantArt превратился в одно из крупнейших онлайн-сообществ по искусству, насчитывающее миллионы пользователей и обширную коллекцию разнообразных произведений искусства.
По своей сути DeviantArt — это цифровая галерея, где художники могут выставлять широкий спектр своих творений, включая цифровые картины, иллюстрации, фотографии, литературу и многое другое. Платформа поощряет взаимодействие посредством комментариев, критики и создания совместных проектов, способствуя созданию динамичной и благоприятной среды для творческих умов.
Структура страницы поиска DeviantArt
Страница поиска — это шлюз к множеству произведений искусства, предоставляющий фильтры и параметры для уточнения поиска по определенным темам, стилям или художникам.

Ключевые компоненты структуры страницы поиска DeviantArt включают в себя:
- Search Bar: Точка входа для пользователей, позволяющая вводить ключевые слова, теги или имена исполнителей.
- Фильтры: Возможности сужения поиска на основе категорий, типов и популярности.
- Сетка результатов: Отображение сетки миниатюрных изображений произведений искусства, соответствующих критериям поиска.
- Нумерация страниц: Навигация для перемещения по нескольким страницам результатов поиска.
Зачем копировать изображения с DeviantArt?
Люди, в том числе исследователи, копируют изображения по разным причинам. Во-первых, это позволяет энтузиастам открывать для себя разнообразные художественные стили и таланты на DeviantArt, что делает его захватывающим путешествием художественного исследования. Для исследователей и аналитиков копирование предоставляет ценные данные для изучения тенденций и эволюции цифрового искусства с течением времени. Художники и любители искусства также используют копированные изображения в качестве источника вдохновения и создают тщательно подобранные коллекции, демонстрируя колоссальную креативность сообщества DeviantArt. Кроме того, копирование помогает понять динамику сообщества, включая популярные темы, тенденции сотрудничества и влияние различных стилей искусства. По сути, копирование с DeviantArt — это способ оценить, узнать и внести свой вклад в богатую палитру художественного выражения на платформе.
Настройка вашей среды
Для скрапинга изображений с Deviantart давайте убедимся, что ваша среда подготовлена и готова. Этот раздел проведет вас через установку основных инструментов, включая Python, и настройку необходимых библиотек — Crawlbase, BeautifulSoup и Pandas.
Установка Python и библиотек
Установка Python:
Начните с установки Python, языка программирования, который будет управлять нашим приключением по скрапингу. Посетите официальный сайт Python и загрузите последнюю версию, подходящую для вашей операционной системы. Следуйте инструкциям по установке, чтобы настроить Python на вашем компьютере.
Создайте виртуальную среду:
Чтобы поддерживать чистую и организованную среду разработки, рассмотрите возможность создания виртуальной среды для вашего проекта. Используйте следующие команды в вашем терминале:
1 | # Создайте виртуальную среду |
Установка библиотеки:
После установки Python откройте терминал или командную строку и установите необходимые библиотеки с помощью следующих команд:
1 | pip установить crawlbase |
Crawlbase: crawlbase библиотека представляет собой оболочку Python для Crawlbase API, который позволит нам эффективно выполнять веб-запросы.
Красивый суп: Beautiful Soup — библиотека для разбора HTML и XML-документов. Она особенно полезна для извлечения данных из веб-страниц.
Панды: Pandas — это мощная библиотека для обработки данных, которая поможет вам эффективно организовать и проанализировать собранные данные.
Запросы: requests Библиотека — это модуль Python для простой отправки HTTP-запросов и управления ответами. Она упрощает общие операции HTTP, что делает ее широко используемым инструментом для веб-задач, таких как веб-скрапинг и взаимодействие с API.
получение Crawlbase API ключ
Подписаться на Crawlbase:
Перейдите в Crawlbase сайт и Регистрация для учетной записи, если вы еще этого не сделали. После регистрации войдите в свою учетную запись.
Получите свой ключ API:
После входа в систему перейдите в свой документация по счету on Crawlbase. Найдите свой ключ API, который имеет решающее значение для взаимодействия с Crawlbase Crawling API. Храните этот ключ в надежном месте, поскольку он станет вашим шлюзом для доступа к нужным вам веб-данным.
Выбор среды разработки IDE
Интегрированная среда разработки (IDE) — это как особое пространство для написания кода. Она помогает, выделяя код, предлагая слова по мере ввода и предоставляя инструменты для исправления ошибок. Несмотря на то, что вы можете писать код Python в простом текстовом редакторе, использование IDE значительно упрощает и улучшает процесс разработки.
Вот несколько популярных IDE для Python, которые стоит рассмотреть:
PyCharm: PyCharm — это надежная IDE с бесплатной версией Community Edition. Она предлагает такие функции, как анализ кода, визуальный отладчик и поддержку веб-разработки.
Код Visual Studio (код VS): VS Code — бесплатный редактор кода с открытым исходным кодом, разработанный Microsoft. Его обширная библиотека расширений делает его универсальным для различных задач программирования, включая веб-скрапинг.
Jupyter Notebook: Jupyter Notebook отлично подходит для интерактивного кодирования и исследования данных. Он широко используется в проектах по науке о данных.
Spyder: Spyder — это IDE, разработанная для научных и связанных с данными задач. Она предоставляет такие функции, как проводник переменных и интерактивная консоль.
С этими шагами ваша среда теперь оснащена необходимыми инструментами для нашего DeviantArt scraper-начинания. В следующих разделах мы воспользуемся этими инструментами для создания нашего DeviantArt Scraper и раскроем мир цифрового искусства.
Исследование Crawlbase Crawling API
Приступая к использованию веб-скрапинга для DeviantArt, важно понимать Crawlbase Crawling API. В этой части будут подробно описаны технические детали CrawlbaseAPI, предоставляющий вам знания о том, как без проблем использовать его в вашем проекте по сбору данных о заданиях Python.
Технические преимущества Crawlbase Crawling API
The Crawlbase Crawling API предлагает несколько важных преимуществ, помогая разработчикам собирать веб-данные и легко управлять различными частями процесса сканирования. Вот некоторые заметные преимущества:

- Адаптируемые настройки: Crawlbase Crawling API дает множество настроек, позволяя разработчикам тонко настраивать свои запросы API. Это включает такие параметры, как «format», «user_agent», «page_wait» и другие, позволяя настраивать на основе конкретных потребностей.
- Выбор формата данных: Разработчики могут выбирать между форматами ответов JSON и HTML в зависимости от своих предпочтений и потребностей в обработке данных. Такая гибкость упрощает извлечение и обработку данных.
- Обработка файлов cookie и заголовков: Используя такие параметры, как «get_cookies" а также "получить_заголовки», разработчики могут получить важную информацию, такую как файлы cookie и заголовки с исходного веб-сайта, которая имеет решающее значение для определенных задач веб-скрапинга.
- Работа с динамическим контентом: Этот API хорош для обработки динамического контента, полезен для сканирования страниц с JavaScript. Такие параметры, как «страница_ожидание" а также "ajax_wait«Помогите разработчикам убедиться, что API захватывает весь контент, даже если его загрузка занимает некоторое время.
- Изменение IP-адреса: Этот API позволяет вам сменить IP-адреса, сохраняя вашу анонимность и снижая вероятность блокировки веб-сайтами. Эта функция делает веб-сканирование более успешным.
- Выбор места: Разработчики могут указать страну для запросов с помощью «страна«параметр, который удобен в ситуациях, когда вам нужны данные из определенных мест.
- Поддержка сети Tor: Включение «tor_network«параметр позволяет сканировать onion-сайты через сеть Tor, делая ее более конфиденциальной и предоставляя доступ к контенту в даркнете.
- Использование скраперов для данных: Этот API позволяет вам использовать предопределенные скребки данных с использованием "скребок«параметр, позволяющий без особых хлопот получать конкретную информацию с веб-страниц.
- Асинхронное сканирование: Если вам необходимо асинхронное сканирование, API поддерживает «асинхронной“ параметр. Разработчики получают идентификатор запроса (RID) для легкого извлечения просканированных данных из облачного хранения.
- Автопарсинг: «автоанализ«Параметр упрощает извлечение данных, предоставляя проанализированную информацию в формате JSON, что снижает необходимость в большом количестве дополнительной работы после получения HTML-контента.
Подводя итог, CrawlbaseАвтора Crawling API мощный инструмент для веб-скрейпинга и извлечения данных. Он предлагает множество настроек и функций для удовлетворения различных потребностей, делая веб-сканирование эффективным и действенным, независимо от того, имеете ли вы дело с динамическим контентом, управляете файлами cookie и заголовками, изменение IP-адресовили получение конкретных данных.
Отправка запроса с Crawling API
CrawlbaseАвтора Crawling API разработан для простоты и удобства интеграции в ваши проекты веб-скрейпинга. Все URL-адреса API начинаются с базовой части: https://api.crawlbase.com. Сделать первый вызов API так же просто, как выполнить команду в терминале:
1 | виться 'https://api.crawlbase.com/?token=YOUR_CRAWLBASE_TOKEN&url=https%3A%2F%2Fgithub.com%2Fcrawlbase%3Ftab%3Drepositories' |
Здесь вы увидите параметр токена, который служит вашим ключом аутентификации для доступа CrawlbaseВозможности веб-скрапинга. Crawlbase предлагает два типа токенов: обычный (TCP) токен и токен JavaScript (JS). Выбирайте обычный токен для веб-сайтов, которые не сильно меняются, например, статических веб-сайтов. Но если вы хотите получить информацию с сайта, который работает только тогда, когда люди используют веб-браузеры с JavaScript, или если JavaScript делает важные вещи, которые вы хотите, на стороне пользователя, то вам следует использовать токен JavaScript. Как и в случае с DeviantArt, обычный токен — хороший выбор.
Время и формат ответа API
При взаимодействии с Crawlbase Crawling API, важно понять динамику времени отклика и как интерпретировать успех или неудачу. Давайте подробнее рассмотрим эти компоненты:
Время ответа: Обычно API показывает время отклика в диапазоне от 4 до 10 секунд. Чтобы обеспечить плавную работу и компенсировать возможные задержки, рекомендуется установить тайм-аут для вызовов не менее 90 секунд. Это защищает ваше приложение, позволяя ему управлять колебаниями времени отклика без сбоев.
Форматы ответа: При отправке запросов Crawlbase, вы можете выбрать формат ответа HTML или JSON в зависимости от ваших предпочтений и потребностей в анализе. Добавляя параметр запроса «format» со значениями «HTML» или «JSON», вы можете указать желаемый формат.
В сценарии, где вы выбираете формат ответа HTML (настройка по умолчанию), API предоставит HTML-контент веб-страницы в качестве ответа. Параметры ответа будут удобно включены в заголовки ответа для удобства доступа. Вот наглядный пример ответа:
1 | Заголовки: |
Если вы выберете формат ответа JSON, вы получите структурированный объект JSON, который можно легко проанализировать в вашем приложении. Этот объект содержит всю необходимую информацию, включая параметры ответа. Вот пример ответа:
1 | { |
Заголовки ответа: Ответы HTML и JSON включают в себя важные заголовки, которые предоставляют ценную информацию о запросе и его результате:
url: Исходный URL, который был отправлен в запросе, или URL любых перенаправлений, которые Crawlbase последовало.original_status: Ответ о состоянии, полученный Crawlbase при сканировании URL, отправленного в запросе. Это может быть любой действительный код статуса HTTP.pc_status: Crawlbase (pc) код статуса, который может быть любым кодом статуса и является кодом, который в итоге оказывается действительным. Например, если веб-сайт возвращает original_status 200 с вызовом CAPTCHA, pc_status может быть 503.body: Этот параметр доступен в формате JSON и содержит содержимое веб-страницы, которая Crawlbase найдено в результате сканирования прокси-сервером URL-адреса, отправленного в запросе.
Эти параметры ответа позволяют вам оценить результаты ваших запросов и определить, была ли операция по веб-скрейпингу успешной.
Crawling API Параметры
Crawlbase предлагает полный набор параметров, которые позволяют разработчикам настраивать свои запросы на сканирование веб-страниц. Эти параметры позволяют точно настраивать процесс сканирования для удовлетворения конкретных требований. Например, вы можете указать форматы ответов, такие как JSON или HTML, используя параметр «format» или контролировать время ожидания страницы с помощью «page_wait» при работе с контентом, сгенерированным JavaScript.
Кроме того, вы можете извлекать файлы cookie и заголовки, устанавливать пользовательские агенты, делать снимки экрана и даже выбирать настройки геолокации с помощью таких параметров, как «get_cookies», «user_agent», «screenshot» и «country». Эти параметры обеспечивают гибкость и контроль над процессом сканирования веб-страниц. Например, чтобы получить файлы cookie, установленные исходным веб-сайтом, вы можете просто включить параметр запроса get_cookies=true в свой запрос API и Crawlbase вернет файлы cookie в заголовках ответа.
Вы можете больше узнать о Crawlbase Crawling API параметры здесь.
Бесплатная пробная версия, стратегия тарификации и ограничение скорости
Crawlbase продлевает пробный период, охватывающий первые 1,000 запросов, предлагая шанс изучить его возможности, прежде чем принимать на себя обязательства. Тем не менее, оптимизация этого пробного окна имеет решающее значение для извлечения из него максимальной выгоды.
Работая по модели «оплата по факту использования», Crawlbase взимает плату исключительно за успешные запросы, обеспечивая экономически эффективное и действенное решение для ваших усилий по веб-скрейпингу. Определение успешных запросов зависит от тщательного изучения original_status и pc_status в пределах параметров ответа.
API устанавливает ограничение скорости, ограничивая запросы максимум 20 в секунду на токен. Если вам необходим более высокий предел скорости, обращение в службу поддержки позволяет провести индивидуальное обсуждение, чтобы учесть ваши конкретные требования.
Crawlbase Библиотека Python
The Crawlbase Библиотека Python предлагает простой способ взаимодействия с Crawlbase Crawling API. Вы можете использовать этот легкий и не имеющий зависимостей класс Python в качестве оболочки для Crawlbase API. Для начала инициализируем Crawling API класс с вашим Crawlbase токен. Затем вы можете сделать запросы GET, указав URL, который вы хотите скопировать, и любые желаемые параметры, такие как пользовательские агенты или форматы ответов. Например, вы можете скопировать веб-страницу и получить доступ к ее содержимому следующим образом:
1 | от база сканирования Импортировать CrawlingAPI |
Эта библиотека упрощает процесс извлечения веб-данных и особенно полезна для сценариев, где динамический контент, ротация IP-адресов и другие расширенные функции Crawlbase API обязательны.
Crawling Страница поиска DeviantArt
Теперь, когда мы вооружились пониманием DeviantArt и настроенной средой, давайте погрузимся в захватывающий процесс сканирования страницы поиска DeviantArt. Этот раздел проведет вас через импорт необходимых библиотек, построение URL для поиска и выполнение запросов API с использованием Crawlbase Crawling API для извлечения HTML-контента.
Импорт необходимых библиотек
Откройте ваш любимый редактор Python или создайте новый файл скрипта Python. Чтобы начать наше приключение по ползанию, нам нужно вооружиться правильными инструментами. Импортируйте необходимые библиотеки в ваш скрипт Python:
1 | от база сканирования Импортировать CrawlingAPI |
Здесь мы приводим CrawlingAPI класс от Crawlbase, гарантируя, что у нас есть возможности взаимодействовать с Crawling API.
Создание URL для поиска DeviantArt
Теперь давайте построим URL для нашего поиска DeviantArt. Предположим, мы хотим исследовать цифровое искусство с ключевым словом «fantasy». Конструкция URL может выглядеть так:
1 | # Замените «YOUR_CRAWLBASE_TOKEN» на ваш реальный Crawlbase Токен API |
Выполнение запросов API с помощью Crawlbase Crawling API для извлечения HTML
Теперь, когда наш URL готов, давайте воспользуемся мощью Crawlbase Crawling API для извлечения HTML-содержимого страницы поиска DeviantArt:
1 | # Выполнение API-запроса |
В этом фрагменте мы использовали метод get класса CrawlingAPI для выполнения запроса к сконструированному поисковому URL. Затем ответ проверяется на успешность, и в случае успеха извлекается HTML-контент для дальнейшего изучения.
Запуск вашего скрипта
Теперь, когда ваш скрипт готов, сохраните его с расширением .py, например, deviantart_scraper.py. Откройте терминал или командную строку, перейдите в каталог скрипта и выполните:
1 | питон deviantart_scraper.py |
Замените deviantart_scraper.py на фактическое имя вашего скрипта. Нажмите Enter, и ваш скрипт будет выполнен, инициируя процесс сканирования страницы поиска DeviantArt.
Пример вывода:

С помощью этих шагов мы инициировали процесс сканирования страницы поиска DeviantArt. В следующих разделах мы углубимся в анализ и извлечение URL-адресов изображений, приближая нас к завершению нашего DeviantArt Scraper.
Обработка нумерации страниц
Навигация по нескольким страницам — это обычная проблема при парсинге веб-сайтов с обширным контентом, и DeviantArt не является исключением. В этом разделе мы углубимся в тонкости обработки пагинации, гарантируя, что наш парсер DeviantArt эффективно захватит широкий спектр результатов поиска.
Понимание пагинации в DeviantArt
DeviantArt структурирует результаты поиска по нескольким страницам для систематического управления и представления контента. Каждая страница обычно содержит подмножество результатов, и пользователи продвигаются по этим страницам, чтобы исследовать дополнительный контент. Понимание этой системы пагинации необходимо для того, чтобы наш скрапер мог собрать полный набор данных.
Изменение запросов API для нескольких страниц
Чтобы адаптировать наш скрапер для пагинации, нам нужно будет динамически изменять наши запросы API по мере перемещения по разным страницам. Рассмотрим следующий пример:
1 | # Предположим, что 'page_number' — это переменная, представляющая номер страницы. |
В этом фрагменте мы добавили &page={page_number} к URL поиска, чтобы указать нужную страницу. По мере того, как наш скрапер продвигается по страницам, мы можем обновить page_number соответственно.
Обеспечение эффективной обработки страниц
Эффективность имеет первостепенное значение при работе с пагинацией, чтобы предотвратить ненужную нагрузку на ресурсы. Рассмотрите возможность внедрения цикла для систематического перебора нескольких страниц. Давайте обновим скрипт из предыдущего раздела, чтобы включить пагинацию:
1 | от база сканирования Импортировать CrawlingAPI |
The scrape_page Функция инкапсулирует логику построения URL, создания запроса API и обработки извлечения HTML-контента. Она проверяет код статуса ответа и, в случае успеха (код статуса 200), обрабатывает HTML-контент для извлечения данных. main функция инициализирует Crawlbase API, устанавливает базовый URL, ключевое слово и общее количество страниц для скрапа. Затем он проходит по указанному количеству страниц, вызывая scrape_page функция для каждой страницы. Извлеченные данные, представленные здесь в виде списка заполнителей, печатаются для демонстрационных целей.
В следующих разделах мы подробно рассмотрим процесс анализа HTML-контента для извлечения URL-адресов изображений и реализацию механизмов для систематической загрузки этих изображений.
Анализ и извлечение URL-адресов изображений
Теперь, когда мы успешно прошли через несколько страниц, пришло время сосредоточиться на разборе и извлечении ценной информации из HTML-контента. В этом разделе мы рассмотрим, как проверить страницу поиска DeviantArt на предмет селекторов CSS, использовать эти селекторы для извлечения изображений, очистить извлеченные URL-адреса и, наконец, сохранить данные в форматах CSV и SQLite.
Проверка страницы поиска DeviantArt на наличие селекторов CSS
Прежде чем мы сможем извлечь URL-адреса изображений, нам нужно определить элементы HTML, содержащие соответствующую информацию. Щелкните правой кнопкой мыши на веб-странице, выберите «Проверить» (или «Проверить элемент») и пройдите по структуре HTML, чтобы найти элементы, содержащие URL-адреса изображений.
Например, DeviantArt структурирует URL-адреса своих изображений в тегах HTML следующим образом:
1 | <a |
В этом случае селектор CSS для URL-адреса изображения может быть следующим: a[data-hook="deviation_link"] img[property="contentUrl"].
Использование селекторов CSS для извлечения URL-адресов изображений
Давайте интегрируем логику разбора в наш существующий скрипт. Используя библиотеку BeautifulSoup, мы можем разобрать HTML-контент и извлечь URL-адреса изображений на основе идентифицированных CSS селекторы. Обновите функцию scrape_page, включив в нее логику анализа с использованием селекторов CSS.
1 | от база сканирования Импортировать CrawlingAPI |
scrape_page(api, base_url, keyword, page_number): Эта функция принимает параметры для Crawlbase API-экземпляр api, базовый URL base_url, ключевое слово для поиска keyword, и номер страницы page_number. Он создает URL для текущей страницы, делает запрос к Crawlbase API для извлечения HTML-контента, а затем извлекает URL-адреса изображений из HTML с помощью BeautifulSoup. Селектор CSS, используемый для URL-адресов изображений, — это 'a[data-hook="deviation_link"] img[property="contentUrl"]'. Извлеченные URL-адреса изображений сохраняются в списке словарей. parsed_data.main(): Эта функция является основной точкой входа скрипта. Она инициализирует Crawlbase API с предоставленным токеном устанавливает базовый URL-адрес на «https://www.deviantart.com, определяет ключевое слово поиска как «fantasy» и определяет общее количество страниц для скрапинга (в данном случае 2). Он выполняет итерацию по указанному количеству страниц, вызывая scrape_page функция для каждой страницы и добавление извлеченных данных в all_data список. Наконец, он выводит извлеченные данные в отформатированном представлении JSON, используя json.dumps.
Пример вывода:
1 | [ |
Хранение извлеченных данных в базе данных CSV и SQLite
Теперь давайте обновим main функция обработки извлеченных данных и сохранения их в форматах CSV и SQLite.
1 | Импортировать sqlite3 |
- Для хранения CSV скрипт использует библиотеку Pandas для создания DataFrame df из извлеченных данных, а затем записывает DataFrame в CSV-файл.
deviantart_data.csvс использованием метода to_csv. - Для хранилища базы данных SQLite скрипт инициализирует базу данных с помощью
initialize_databaseфункцию и вставляет извлеченные данные вdeviantart_dataтаблица с использованиемinsert_data_into_databaseФункция. Файл базы данныхdeviantart_data.dbсоздается и обновляется при каждом запуске скрипта и включает столбцы идентификатора и URL-адреса изображения для каждой записи.
deviantart_data.csv предварительный просмотр:

deviantart_data.db предварительный просмотр:

Загрузка изображений с URL-адресов скопированных изображений
В этом разделе вы узнаете, как использовать Python для загрузки изображений с URL-адресов, полученных с DeviantArt, как обрабатывать потенциальные ошибки загрузки и эффективно организовывать загруженные изображения.
Использование Python для загрузки изображений
Python предлагает множество библиотек для обработки HTTP-запросов и загрузки файлов. Один из распространенных и удобных для пользователя вариантов — это requests Библиотека. Ниже приведен базовый пример того, как можно использовать ее для загрузки изображения:
1 | Импортировать Запросы |
Эта функция, download_image, берет URL изображения и локальный путь, где изображение должно быть сохранено. Затем он использует requests библиотека для загрузки изображения.
Организация загруженных изображений
Организация загруженных изображений в структурированном каталоге может значительно упростить дальнейшую обработку. Рассмотрите возможность создания структуры папок на основе категорий, ключевых слов или любых других соответствующих критериев. Вот простой пример того, как можно организовать загруженные изображения:
1 | загруженные_изображения/ |
Такая организация может быть достигнута путем корректировки download_path в download_image функция на основе категории или любой другой соответствующей информации, связанной с каждым изображением.
Выполнив эти шаги, вы сможете не только загружать изображения с DeviantArt, но и эффективно обрабатывать ошибки и организовывать загруженные изображения для легкого доступа и дальнейшего анализа.
Выводы
Надеюсь, теперь вы сможете легко загружать и извлекать изображения из DeviantArt с помощью Python и Crawlbase Crawling API. А также, используя Python и изучая страницы поиска DeviantArt, вы узнали, как эффективно извлекать и организовывать ссылки на изображения.
Независимо от того, создаете ли вы коллекцию цифрового искусства или пытаетесь понять, что находится на DeviantArt, важно подходить к скрапингу веба ответственно. Всегда следуйте правилам платформы и будьте этичны.
Теперь, когда у вас есть эти полезные навыки, вы можете начать скрейпинг в Интернете самостоятельно. Если у вас возникнут какие-либо проблемы, вы можете задать Crawlbase команда поддержки за помощью.
FAQ
В. Законен ли веб-скрапинг на DeviantArt?
Хотя сам по себе веб-скрейпинг в целом является законным, важно соблюдать границы, установленные условиями обслуживания DeviantArt. DeviantArt Scraper работает с уважением к этичным практикам скрапинга. Всегда читайте и соблюдайте руководящие принципы DeviantArt, чтобы обеспечить ответственное и законное использование.
В. Как мне справиться с пагинацией при скрейпинге DeviantArt?
Управление пагинацией в DeviantArt включает в себя построение URL-адресов для различных страниц в результатах поиска. В руководстве показано, как настроить запросы API для нескольких страниц, что обеспечивает плавный проход по страницам поиска DeviantArt. Это обеспечивает комплексное извлечение данных для тщательного исследования.
В. Могу ли я настроить данные, которые я извлекаю из DeviantArt?
Конечно. Руководство дает представление о проверке HTML-структуры страниц поиска DeviantArt и использовании селекторов CSS. Эта настройка позволяет вам настраивать извлечение данных, позволяя вам сосредоточиться на определенной информации, такой как URL-адреса изображений. Адаптируйте логику скрапинга в соответствии с вашими индивидуальными потребностями и предпочтениями.
В. Каковы преимущества хранения данных в форматах CSV и SQLite?
Хранение данных в форматах CSV и SQLite предлагает универсальный подход. CSV облегчает обмен данными и их анализ, делая их доступными для различных приложений. С другой стороны, SQLite предоставляет легкое решение для баз данных, гарантируя эффективный поиск и управление данными в ваших проектах Python. Этот двухформатный подход подходит для различных вариантов использования и предпочтений.










