Abstract

Розглянуто актуальну для сфер електронної комерції, соціальних мереж, наукових досліджень завдань автоматизованого збирання даних з вебсайтів. Проаналізовано особливості застосування двох методів – вебскрейпінгу та інтерфейсу прикладного програмування АРІ (англ. Application Programming Interface) для розроблення ефективного комбінованого методу вирішення цього науково-практичної завдання як з погляду продуктивності, так і повноти отриманого результату. Розроблено власну систему автоматизованого збирання даних Harvester з використанням Microsoft.NET, AngleSharp, JSONpath, React.js. Оцінено можливість методів на здатність обробляти дані про вінілові платівки, що містять ціну, автора, назву релізу та штрихкод. Проведено низку експериментів для п'яти вебсайтів, із кожного з яких отримано від 500 до 4000 записів. Загальна кількість отриманих записів – 14995. В обчислювальних експериментах використано два типи джерел: 1) масові джерела – джерела, коли обробляється тільки сторінка каталогу з переліком товарів, де розміщені основні параметри продуктів; 2) одиничні джерела – коли після оброблення сторінки каталогу виконують додатковий збір даних зі сторінок окремих товарів для отримання дещо детальнішої інформації про кожен продукт. Вебскрейпінг було виконано за допомогою PuppeteerSharp для імітації користувача та AngleSharp для синтаксичного аналізу (парсингу) даних, тоді як доступ до API був структурований через REST. Запропоновано для аналізу продуктивності методів виокремити три основні етапи процесу оброблення сторінки вебсайту: завантаження, витягування, простій. Аналіз показав, що API забезпечує значно швидший (у середньому в 10 разів) і надійніший доступ до структурованих даних порівняно з вебскрейпінгом. API-запити дають можливість безпосередньо отримувати конкретну інформацію у стиснутому форматі (зазвичай JSON), що знижує загальну тривалість оброблення. На відміну від цього, вебскрейпінг, хоча й забезпечує більшу гнучкість, проте вимагає більше обчислювальних ресурсів через потребу синтаксичного аналізу HTML, оброблення динамічного контенту та навігації вебсторінками. Запропоновано для збирання даних з вебсайтів використовувати комбінований метод, що поєднує вебскрейпінг та запити інтерфейсу прикладного програмування. Цей метод забезпечує більшу повноту зібраних даних, ніж метод інтерфейсу прикладного програмування з оптимальною швидкістю порівняно з вебскрейпінгом.

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.