Мазмұнға өту
N1
Интеграциялар · API жоқ мемлекеттік портал

API жоқ порталда сот істерін іздеу

Клиент: sattar.kz Санат: Интеграциялар Стек: PHP, cURL, DOMDocument/DOMXPath, JSF сессиясын эмуляциялау Мерзім: 1–2 апта
Мәселе

sattar.kz-да контрагенттердің сот істерін мемлекеттік сот порталында бағдарламалық іздеу керек болды — порталда жария API жоқ, тек ескірген JSF/RichFaces веб-интерфейсі бар.

Шектеулер

Портал REST-сіз legacy Java/JSF стегінде құрылған: форманың қызметтік идентификаторлары мен вёрсткасы портал релиздері арасында тұрақсыз, авторизация сессия күйіне негізделген.

Не істедім
  • Браузер сессиясын эмуляциялау: cookie jar + JSF ViewState және Ajax partial-response өңдеу
  • Сот пен жыл бойынша сүзгілермен процесс тарапы бойынша авторизация және іс іздеу
  • Вёрстка өзгергенде fallback-стратегиялары бар каскадты селекторлармен нәтижелердің DOMXPath-парсері
  • Нәтижелерді дедупликациялау және шикі HTML орнына құрылымдық JSON беру
  • Парсинг логикасын түзетусіз жылдам қайта баптау үшін конфигурацияны константаларға шығару
Архитектура
Сот порталы (JSF/RichFaces) Сессияны эмуляциялау XPath-парсер JSON API
Нәтиже

Контрагент бойынша іс іздеу порталға қолмен барудың орнына бағдарламалық JSON-сұранысқа айналды — вёрсткадағы шағын өзгерістерге fallback-парсинг арқасында төзімді.

Нені қайта қолдануға болады
REST API жоқ legacy JSF-порталын эмуляциялау үлгісі Вёрстка өзгергенде graceful fallback-пен XPath-парсинг Скрейпинг нәтижелерін дедупликациялау