Гусь. Начало истории…
Привет, я Эндрю. Хочу рассказать о своем первом опыте работы с открытым кодом и о разработанном проекте - Goose Parser.
Возвращаясь к концу 2015 года, когда эта история началась, я работал старшим разработчиком PHP в одной туристической компании, назовем ее D. И на тот момент у меня не было опыта работы с Node.js. Язык был выбран из-за множества полезных инструментов, таких как PhantomJS, Puppeteer и других с хорошими API-интерфейсами и функциональностью, позволяющей делать что угодно на веб-странице.
Назови это
Так почему же его назвали таким странным именем, как Гусь ?! Хороший вопрос. Первоначальное название было - Fantastic Unified Crawler Kit, вы можете себе представить аббревиатуру этого названия. Это было достаточно забавно, но не то, что можно продвигать и продавать как продукт, слишком мрачно… Примерно в то время у меня была возможность поработать в лондонском офисе D на несколько недель. Мне очень понравились люди, сообщество TravelTech, город, пабы, парки и особенно много разных животных, которые свободно приходили и уходили в зеленых зонах города. Белки, гуси, лебеди, олени… Наконец, я пошел в магазин игрушек Hamleys и нашел куклу гуся. У него есть свой характер и точка зрения. Итак, окончательное решение принято и название проекта изменено. Через некоторое время мы сняли короткий видео-трейлер про Гуся. Вот:
Если честно, существует множество существующих фреймворков для отказа. И Гусь должен быть одним из них. Однако мы планировали создать что-то, что вы можете запустить самостоятельно, а также масштабировать это до платформы, где вы можете выполнить скрипт парсинга в облаке, поделиться им с кем угодно и даже продать. на рынке.
Функции
Итак, давайте подробнее рассмотрим возможности Goose:
- Его можно запускать в разных средах с одинаковым результатом. Это просто означает, что вы можете использовать один и тот же скребок в браузере, Chromium, PhantomJs, JsDom и т. Д.
- Он абстрагируется от реальной среды и дает определенные действия и преобразования, которые могут быть выполнены вместе с утилизацией.
- Правила для парсера определены в формате JSON, поэтому вы можете легко сохранить их в базе данных, а также поделиться и использовать с другими пользователями, которые хотят очистить тот же контент.
- Результат отмены также представлен в виде данных JSON.
- В коробке Goose создается с несколькими средами в отдельных контейнерах Docker, поэтому вы можете просто запустить его как команду CLI, не имея ничего, кроме Docker на вашем компьютере.
- Мы используем библиотеку debug, чтобы упростить процесс отладки на случай, если что-то пойдет не так.
- Goose предоставляет множество дополнительных компонентов, которые значительно экономят ваше время при выполнении обычных задач по удалению, таких как разбиение на страницы, обнаружение капчи / блокировки, ротация прокси и многое другое.
Пусть это код
Вот простой пример того, как Goose может извлекать для вас Интернет.
А вот пример использования CLI (на базе Docker):
Последние мысли
Goose - это модный фреймворк для удаления веб-страниц, который был запущен как инструмент с открытым исходным кодом в одном репозитории. Позже части Goose были перемещены в отдельные репозитории, чтобы минимизировать исходный размер библиотеки и обеспечить выполнение парсера в нескольких средах. Он имеет множество полезных функций и может запускаться как контейнер Docker, что значительно упрощает процесс разработки новых парсеров.
Хотите попробовать?
Если да, то зайдите на goose.show, чтобы узнать больше!
Это бесплатно и с открытым исходным кодом!
Если у вас есть какие-либо вопросы или отзывы, вы можете:
Спасибо за ваше время!