Как создать парсер Booking.com с использованием Goutte и Laravel
В этой статье я покажу вам, как использовать laravel и goutte для создания API, позволяющего получать информацию о свойствах booking.com с помощью URL.
1 - Создание проекта и установка зависимостейcomposer create-project laravel/laravel scrappercomposer require fabpot/goutte
2 - Создание модели с миграциейphp artisan make:model BookingData --migration
3 - Создание сервисов и репозиториев
На этом шаге мы создадим две папки с названиями Services и Repositories в папке app.
3.1 Репозитории
В папке Repositories создайте файл с названием Repository.php.
Создайте подпапку ScrapperRepository и в ней создайте два файла ScrapperRepository.php и ScrapperRepositoryInterface.php.
3.2 Сервисы
Создайте подпапку ScrapperService и в ней создайте два файла ScrapperService.php и ScrapperServiceInterface.php.
4 - Контроллер
Запустите следующую команду, чтобы создать контроллер, и добавьте следующий код.
php artisan make:controller API/ScrapperController
5 - Маршрут
Теперь в файле routes/api.php нам нужно создать маршрут для доступа к методу контроллера.
6 - Тестирование
Для тестирования нашего парсера мы будем использовать Postman.
Подсказка: не забудьте запустить php artisan serve
6.1 Booking.com
Откройте Booking.com и выберите любое свойство, нажмите на значок "Поделиться" и скопируйте ссылку.
6.2 Postman
Откройте Postman и создайте новый метод GET с URL http://localhost:8000/api/booking.Наши исходные данные - это только url свойства.
При нажатии кнопки "Отправить" будет получен массив с данными о свойстве.
Вы можете получить доступ к репозиторию проекта.
GitHub - RenaatoSiilva/booking-dot-com-scraper
Laravel - это веб-фреймворк для создания приложений с элегантным и выразительным синтаксисом. Мы считаем, что разработка должна приносить удовольствие и...
github.com
Надеюсь, этот учебник будет полезен кому-то. :)