Semalt: Web Scraping with Python

Ви переживали один з тих жахливих моментів, коли у вас немає Wi-Fi. Якщо так, то ви зрозуміли, наскільки саме те, що ви робите на своєму комп’ютері, залежить від мережі. Із звичної звички ви опинитесь електронними листами, переглянете фотографії свого друга в Instagram, а також прочитаєте їх твіти.

Оскільки стільки роботи за комп’ютером включають веб-процеси, було б дуже зручно, якби ваші програми могли отримати доступ і в Інтернеті. Це стосується веб-вискоблювання . Він передбачає використання програми для завантаження та обробки вмісту з Інтернету. Наприклад, Google використовує різноманітні програми для скребки для індексації веб-сторінок для своєї пошукової системи.

Існує багато способів, як можна скребки даних з Інтернету. Багато з цих методів вимагають володіння різними мовами програмування, такими як Python та R. Наприклад, за допомогою Python ви можете використовувати ряд модулів, таких як Запити, Красивий суп, Веб-браузер та Селен.

Модуль "Запити" дозволяє вам легко завантажувати файли з Інтернету, не турбуючись про складні проблеми, такі як проблеми з підключенням, мережеві помилки та стиснення даних. Він не обов'язково поставляється з Python, і тому вам доведеться спочатку встановити його.

Модуль був розроблений тому, що модуль 'urllib2' Python має багато ускладнень, що ускладнює його використання. Це насправді досить просто встановити. Все, що вам потрібно зробити, це запустити запити на встановлення pip з командного рядка. Потім потрібно зробити простий тест, щоб переконатися, що модуль встановлений правильно. Для цього можна ввести ">>> імпорт запитів" в інтерактивну оболонку. Якщо не з’являються повідомлення про помилки, установка пройшла успішно.

Щоб завантажити сторінку, потрібно ініціювати функцію 'questions.get ()'. Функція бере рядок URL для завантаження, а потім повертає об’єкт 'відповідь'. Він містить відповідь, яку веб-сервер повернув на ваш запит. Якщо ваш запит успішний, завантажена веб-сторінка зберігається як рядок у текстовій змінній об'єктів відповіді.

Об'єкт відповіді, як правило, має атрибут коду стану, який ви можете використовувати, щоб дізнатися, чи було ваше завантаження успішним. Аналогічно, ви можете викликати метод 'create_for_status ()' на об’єкті відповіді. Це створює виняток, якщо при завантаженні файлу виникли помилки. Це прекрасний спосіб переконатися, що програма зупиняється у разі поганого завантаження.

Звідси ви можете зберегти завантажений веб-файл на жорсткому диску за допомогою стандартних функцій, 'open ()' і 'write ()'. Однак, щоб зберегти кодування тексту Unicode, вам доведеться замінити текстові дані двійковими даними.

Щоб записати дані у файл, ви можете використовувати цикл 'for' методом 'iter_content ()'. Цей метод повертає основні маси даних про кожну ітерацію через цикл. Кожна об'ємна частина в байтах, і ви повинні вказати, скільки байтів буде містити кожна маса. Після того, як ви закінчите писати, зателефонуйте «close ()», щоб закрити файл, і ваше завдання закінчилося.

send email