Привет, народ,
В этой статье мы будем собирать данные о книгах (название, цена) с amazon. Amazon кодирует имена своих HTML-тегов, но мы будем использовать статические.
Заставьте себя и закончите эти разделы кода.
Пойдем!
Шаг 1: Библиотека
Пип установить BeautifulSoup4
pip установить облачный скребок
пип установить панды
CloudScraper: мы будем очищать веб-сайт с помощью этой библиотеки и получать HTML в виде текста.
BeautifulSoup4: и парсинг нашего текста с помощью BS4.
Pandas: может быть, вы хотите извлечь свои данные в excel, csv и т. д.
Шаг 2: Инициализация
Мы должны определить наш браузер, платформу, рабочий стол или нет. Если мы этого не сделаем, сайт может быть заблокирован. Cloudscraper хорош тем, что иногда вы не можете пройти DDoS-системы, как CloudFlare. Но свяжитесь со мной, если вы получите какую-либо ошибку;)
Шаг 3: Соскребите!
18: Мы получаем HTML-страницу в виде текста
21: Разбираем наш текст и теперь готов к фильтрации.
24: Вам нужно найти первый div или любой раздел, содержащий ваши данные. В браузере вы можете щелкнуть правой кнопкой мыши свои данные на веб-сайте и нажать «Проверить». Таким образом, вы можете легко найти свои данные в океане HTML.
27: Найдите теги первой книги, чтобы вы могли перебрать все. find_all может найти все книги, если они имеют одинаковые теги.
Если вы зашли так далеко, вы можете распечатать переменную «книги» и просмотреть информацию о книгах в виде HTML.
Шаг 4: Получите ссылки на книги!
Каждый веб-сайт отличается. Лучший способ получить информацию о продуктах, получить ссылку на продукты —> посетить ссылку на продукты с циклом и получить информацию, которая вам нужна.
30: Перебрать всю книгу.
31: Найти первый контейнер div.
35: Найти все «а», если включить href. Потому что нам нужны только ссылки.
39: Вы можете получить названия цен на главной странице с тегом span, но это бесполезно, потому что содержит слишком много мусорной информации, и вам нужно потратить слишком много времени на очистку этой информации с помощью Python. Лучший способ .. Получить ссылки!
42: Создайте вид над тегом «а».
46: если ссылки содержат строки «продукт» и «/e/», игнорируйте их! Нам не нужны ссылки такого типа.
49: Добавьте остальную часть в «book_urls» с префиксом amazon.com.
52: Создайте кадр данных pandas, чтобы вы могли его экспортировать.
53: Экспортировать как .csv
Выход:
Шаг 5: Посетите ссылки и получите то, что хотите!
Держись.. Еще один шаг, и все готово.
55: Создайте цикл for для ‘books_df[‘URLs’]’.
57: Получить URL из цикла.
58: Открыть URL и получить HTML как текст
59: Сотрите этот текст с помощью BS4.
60: Найти первый div в контейнере.
61: Получить титул
62: Узнать цену
Выход:
Шаг 6: Домашнее задание!
Перейдите в раздел бестселлеров Amazon и попытайтесь получить все ссылки на всех страницах. Бьюсь об заклад, вы найдете тысячи ссылок. Как только вы нашли все, вы можете очистить страницы и получить информацию, которая вам нужна. Вы можете отправить результаты мне!
обратная связь
Что вы думаете об этой статье? Нравится и не нравится, это ваш выбор, но дайте мне знать и помогите мне стать лучше! Я хочу услышать ваши отзывы!
Контакт
Что-то не так с этой статьей? Пожалуйста, дайте мне знать, если вы обнаружите какую-либо ошибку, что-то плохое и т. д. в этой статье, и, конечно же, вы можете связаться со мной и задать вопросы в любое время.
LinkedIn: omercelebi00
Инстаграм: omercelebi00
Ссылка на файл: https://github.com/Toshiro00/Medium/blob/main/Python/Web%20Scraping/amazon_books.py