Вітаю шановне товариство. У цій статті я хочу описати кілька важливих (на мій погляд) моментів, які потрібно мати на увазі при налаштуванні програмного забезпечення OSSEC (HIDS, SIEM система). Офіційна документація по системі представлена в досить великому обсязі на просторах мережі, однак деякі важливі моменти абсолютно ніде не описуються. У якості «подорожніх нотаток» наведу нижче. Відразу обмовлюся, що описувати установку системи, розгортання агентів, первинну настройку я не буду. Тобто припускаю, що читач вже знає, що таке decoder і rule в контексті OSSEC. Все нижчеперелічене було перевірено на версії з 2.8.1, можливо в майбутніх версіях це пофиксят. Отже, в бій.

Читати далі →

Процес парсинга ускладнюється істотними витратами часу на обробку даних. Багатопоточність допоможе в рази збільшити швидкість обробки даних. Сайт для парсингу — «Довідник купюр світу», де отримаємо валюту у співвідношенні до інших.

Читати далі →

Як я парсил всю базу даних ігор Metacritic-а

Metacritic — англомовний сайт-агрегатор, який збирає відгуки про музичних альбомах, іграх, фільмах, телевізійних шоу і DVD-дисках. (з вікіпедії).

Використані бібліотеки: lxml, asyncio, aiohttp (lxml — бібліотека розбору HTML-сторінок з допомогою Python, asyncio і aiohttp будемо використовувати для асинхронності та швидкого вилучення даних). Також будемо активно використовувати XPath. Хто не знає, що це таке, відмінний туторіал.

Читати далі →

Приклад використання Product API від Fetchee для парсингу товарів інтернет-магазину

image

У цій інструкції ми розповімо про те, як з допомогою Fetchee Product API отримати дані про товар URL на прикладі інтернет-магазину lamoda.

Для тих, хто не читав нашу минулу замітку — Product API буде корисний розробників, яким потрібно отримувати дані про товари з будь-якого магазину, але які не хочуть витрачати час на створення власної системи парсинга або вже усвідомили, що open-source бібліотеки володіють істотними обмеженнями і вимагають багато часу на підтримку. Наш автоматичний і не вимагає налаштування API для парсингу eCommerce даних дає можливість зосередиться на розробці основних функцій програми. До того ж спробувати його дуже просто. Деталі під катом.

Читати далі →

Як розпарсити JSON-рядок в командної рядку Linux


Якщо ви часто працюєте з текстами формату JSON з командного рядка або у шелл-скриптах, ви можете задатися питанням, чи є якась консольна утиліта, яка може розпарсити JSON-рядок. Консольний JSON-парсер може бути корисним, коли ви тестуєте або отлаживаете мережеві JSON-сервіси. Ви можете згодувати відповіді формату JSON від веб-сервісу консольному JSON-парсеру, тим самим легко вивчаючи важкочитаємі JSON-відповіді або витягуючи з них окремі об'єкти.

У цьому посібнику я покажу розпарсити JSON-рядок з командного рядка.

Читати далі →

Дуже простий і швидкий HTML->TEXT

image

Всі бачили переглядач html-файлів в TotalCommander. Загорівся ідеєю написати простий і дуже маленький текстовий браузер для своєї операційки. Спочатку, дивився в бік asm-xml — відмінний парсер, проте ну дуже вже великий (мій межа — 64 кілобайти, не технічний, просто принцип такий). Нижче описаний дуже простий спосіб отримання тексту з html.


Читати далі →

Web scraping на Node.js і проблемні сайти

Це друга стаття про створення і використання скриптів для веб-скрейпинга на Node.js.
першої статті розбиралася найпростіша задача світу з веб-скрейпинга. Саме такі завдання дістаються веб-скрейперам в переважній більшості випадків – отримання даних з незахищених HTML-сторінок стабільно працюючого сайту. Швидкий аналіз сайту, HTTP-запити за допомогою needle (організовані за допомогою tress), рекурсивний прохід по посиланнях, DOM-парсинг за допомогою cheerio – ось це ось все.
У цій статті розуміється більш складний випадок. Не з тих, коли доводиться відмовлятися від взятого з боєм замовлення, але з тих, які починаючому скрейперу можуть зірвати дедлайн. До речі, ця задача містилася в реальному замовленні на одній міжнародній біржі фріланса, і перший виконавець її провалив.
Мета цієї статті (як і минулого) – показати весь процес створення і використання скрипта від постановки задачі і до отримання кінцевого результату, проте теми, вже розкриті в першій статті, висвітлюються тут досить коротко, так що я рекомендую почати з першою статті. Тут акцент буде на аналіз сайту з точки зору веб-скрейпинга, виявлення підводних каменів і способи їх обходу.
Читати далі →

Регулярні вирази і математичний парсер

Колись давно, мені знадобився аналізатор математичних виразів на C#. Звичайно, скачати готову реалізацію — не проблема. Але от тільки Інтернету у мене в ті роки не було. У підсумку абсолютно без роздумів і без теоретичних основ парсерів, кінцевих автоматів та іншого він був написаний через регулярні вирази. Хвилин за 10. Варто відзначити, що потрібні були лише арифметичний дій і дужки. Підтримка тригонометричних функцій і іншого не потрібна.

Читати далі →

Pro Parboiled (Частина 4 заключна)

Частина 4. Сувора дійсність

Як змусити Parboiled працювати ще швидше? Яких помилок краще не допускати? Що робити зі спадщиною у вигляді Parboiled1? На ці, а також інші питання покликана відповісти містить стаття серії.

Структура циклу:


Читати далі →

Про Parboiled (Частина 3)

Частина 3: Вилучення даних

У цій статті ми побудуємо парсер для вже описаного нами раніше формату конфігураційних файлів. Також ми реалізуємо невеликий DSL для спрощеного доступу до елементів отриманого дерева. Ще з цієї статті ви дізнаєтеся про типи правил, діях парсера, а так само про «темної матерії» Parboiled — стек значень.

Структура циклу:


Читати далі →