Система аналізу on-line контенту
Зміст
Вступ
Розділ 1. On-line контент. Основні поняття та визначення
.1 On-line контент. Основні визначення
.2 Класифікація on-line контенту
.3 Використання on-line контенту
Розділ 2. Аналіз on-line контенту
.1 Концепції та методи аналізу
.2 Архітектура систем аналізу
.3 Технології аналізу
.4 Оцінювання систем аналізу
Розділ 3. Опис програмного продукту «система аналізу on-line
контенту»
.1 Функціональні вимоги до програмного продукту
.2 Нефункціональні вимоги до програмного продукту
.3 Алгоритми аналізу
.4 Інтерфейс програмного продукту
.5 Тестування програмного продукту
.6 Техніко-економічне обґрунтування
.7 Охорона праці
.7.1 Правові питання охорони праці
.7.2 Організація і обладнання робочих місць користувачів ПК з
точки зору охорони праці
.7.3 Характеристика виробничого середовища і чинники, що діють на
оператора в процесі його праці
.7.4 Вимоги електричної та пожежної безпеки
Висновки
Список використаних джерел
Додаток
Вступ
Актуальність теми. У світі сучасного бізнесу будь-якому
підприємству або підприємцю, який бажає досягти успіху, необхідно не тільки
виробляти і просувати продукт, а й відстежувати поточні зміни в конкурентному
середовищі, тобто збирати інформацію.
У сучасних умовах в бізнесі істотне значення набуває аналіз
можливих ситуацій, визначення їх тенденцій, оцінка можливих ризиків при
прийнятті рішень. Недостатньо володіти інформацією у вигляді маркетингових
досліджень або бізнес-довідок про підприємства потенційних партнерів і
конкурентів. Важливість вирішення цих завдань стала причиною виникнення
інформаційного моніторингу - інструменту інформаційно-аналітичної підтримки
прийняття рішень.
Сучасний ринок - це найвища ступінь ризику і жорстка конкуренція.
Для того, щоб вижити і успішно функціонувати, потрібно оперативно реагувати на
події і прораховувати свої дії на кілька кроків вперед, для чого потрібна
інформація. Ефективним засобом отримання такої інформації є інформаційний
моніторинг, який дозволяє вчасно отримувати потрібну інформацію, аналізувати її
та приймати рішення.
У свою чергу для здійснення інформаційного моніторингу необхідною
є система інформаційного моніторингу, яка використовує технології інтеграції
Інтернет-контенту. Тож для вибору оптимальної системи необхідним є проведення
комплексного аналізу усіх технологій інтеграції та обрання доцільнішої.
Об’єктом магістерської роботи є комплексна обробка
просторово-розподілених ресурсів мережі Інтернет.
Предметом магістерської роботи є технології інтеграції
Інтернет-контенту, як засобу інформаційного моніторингу.
Метою магістерської роботи є обґрунтування технологій та розробка
системи інтеграції Інтернет-контенту для конкурентного середовища ринку праці.
Для досягнення поставленої мети мають бути вирішені такі задачі:
проаналізувати поняття інформаційного моніторингу на сьогоднішній
день, сфери його використання та його завдання;
проаналізувати та порівняти системи інформаційного моніторингу в
мережі Інтернет;
проаналізувати та порівняти технології інтеграції
Інтернет-контенту;
сформулювати критерії оцінки систем інформаційного моніторингу;
спроектувати та розробити систему інформаційного моніторингу
середовища ринку праці за обраною технологією.
Методами дослідження є порівняння (порівнюються різні підходи до
вирішення проблеми), експеримент, аналіз та систематизація.
Наукова новизна та практичне значення одержаних результатів:
уточнено поняття «інформаційний моніторинг» у різних сферах його
використання відповідно до виконуваних завдань діяльності;
конкретизовано критерії оцінки систем інформаційного моніторингу;
виконано порівняння та систематизовано технології інтеграції
Інтернет-контенту;
узагальнено та класифіковано системи інформаційного моніторингу в
мережі Інтернет;
проілюстровано роботу системи інтеграції Інтернет-контенту як
вбудованого модуля до сайту.
Особистий внесок. Виконана робота є самостійним дослідженням
відповідно до сформульованої мети, завдань і обраної методики науковго пошуку.
Автором самостійно дібрані приклади систем інформаційного
моніторингу в мережі Інтернет, узагальнено дані щодо технологій інтеграції Інтернет-контенту
та здійснено їх аналітичний огляд, виконано реалізацію і перевірено роботу
системи інтеграції Інтернет-контенту у вигляді вбудованого модуля до сайту.
Апробація результатів роботи. Результати досліджень були
представлені у рамках науково-практичної конференції «Дні науки КНУКіМ» у
секції «Стратегія розвитку електронного культурно-освітнього і наукового
простору в Україні» у доповіді «Методи аналізу on-line контенту» та на XVIII
міжнародній науково-практичній конференції «Інформаційні технології в
економіці, менеджменті та бізнесі. Проблеми науки, практики і освіти» у
доповіді «Системи аналізу on-line-інформації».
Розділ 1. On-line контент. Основні поняття та визначення
.1 On-line контент. Основні визначення
Контент (від англійського content - вміст) - це абсолютно будь-яке
інформаційно значуще або змістовне наповнення інформаційного ресурсу або
веб-сайту. Контентом називаються тексти, мультимедіа, графіка. Проте найчастіше
контентом називають текстове наповнення веб-сайту. У HTML-документі під
контентом розуміють частину службової інформації в однойменному полі. У цьому
полі розміщують опис-резюме даного інтернет-ресурсу. Контент дуже важливий для
пошукових машин.
В якості on-line контенту найчастіше можна зустріти:
текстові файли;
цифрові зображення;
звукові файли;
відео файли
Контент, також, це набір інформації, об’єкт системи електронної
контент-комерції, який неподільний у часі, є основним чинником функціонування
системи електронної контент-комерції та існує лише в електронному вигляді.
Ранжування - визначення порядку відповідно до рангу, авторитету,
респектабельності або релевантності, якщо мова йде про сайти. Ранжування - це
процес, результат якого користувач бачить, отримуючи відповідь пошукової
системи на своє питання. Система отримує і обробляє запит, сортує все, що
знаходить в своїй базі даних, тобто виробляє ранжування, і видає результат.
Видача, як відомо, являє собою сторінку або декілька, де в певному порядку
розташовані посилання, що відповідають на питання. Розташування всіх Web-сайтів
у відповідний ланцюжок і є ранжування.
Аналіз контенту - це якісно-кількісний метод вивчення документів,
який характеризується об'єктивністю висновків і суворістю процедури та полягає
у обробці тексту з подальшою інтерпретацією результатів. Предметом аналізу
контенту можуть бути як проблеми соціальної дійсності, котрі висловлюються чи
навпаки приховуються у документах, так і внутрішні закономірності самого
об'єкта дослідження.
Може використовуватися як основний метод дослідження (наприклад,
аналіз тексту при дослідженні політичної спрямованості газети), в поєднанні з
іншими методами (наприклад, в дослідженні ефективності функціонування засобів
масової інформації), допоміжний або контрольний (наприклад, при класифікації
відповідей на відкриті запитання анкет).
Виділяють два основних типи аналізу контенту: кількісний і
якісний. Якщо кількісний аналіз націлений на виявлення частоти окремих тем,
слів або символів, що містяться у тексті, то якісний аналіз пов'язаний з
фіксуванням нетривіальних висловлювань, мовних інтонацій з розумінням цінності
змісту повідомлення.
Різновид контенту - це інформаційний товар, інформаційний вміст
web-сайта, Інтернет-видавництва, маркетингових досліджень, консалтингових
послуг, який є об’єктом бізнес-процесів систем електронної контент-комерції
[10].
Контент-моніторинг - це змістовий аналіз інформаційних потоків з
метою отримання необхідних якісних і кількісних зрізів, який, на відміну від
контент-аналізу, здійснюється безперервно в часі.
.2 Класифікація on-line контенту
Якість контенту і його актуальність є запорукою трафіку, тобто
притоку відвідувачів на сайт. Велика кількість людей у світі
відправляється за оригінальною і неупередженою інформацією на сайт BBC, де
новини публікуються з перших рук. Інша частина користувачів можуть
задовольнитися передруком і переказом новин - існують такі новинні сайти, які
просто передруковують готові статті.
Це важливий момент для поділу контента на унікальний або
неунікальний. Унікальним контентом може називатися будь-який контент, який ще
жодного разу не був опублікований в мережі. Неунікальний - це передрук,
запозичення, що є порушенням авторських прав. Закон про інтелектуальну
власність поширюється і в інтернеті. Неунікальний контент часто навіть не
індексується пошуковими машинами.
Унікальний контент також повинен володіти цінністю, а не бути
набором незрозумілих слів. Це важливо не тільки з точки зору відвідувачів
сайту, але і з точки зору пошукових систем, які розрізняють унікальний контент
і навіть виділяють спам. Якщо до створення унікального контенту застосувати
основи пошукової оптимізації і використовувати семантичне ядро, то цінність
його з точки зору пошукових систем підвищиться.line контент можна розділити на
статичний та динамічний. Статичною можна називати Web-сторінку, яка цілком
зберігається на сервері і показується відвідувачеві у своєму незмінному вигляді
(слід врахувати, що статична сторінка може містити деякі змінювані елементи,
наприклад банери, проте вона все одно залишається статичної). Сайтів які
складаються з статичних сторінок досить багато, з них, можна сказати, починався
Інтернет. Динамічний - такий, що регулярно поповнюється, змінюється або
генерується перед видачею. Динамічною можна називати Web-сторінку, згенеровану
сервером з декількох частин або отриману шляхом внесення або зміни даних в
сторінку.
Виходячи зі способу отримання, контент також може бути:
авторським (розміщується на сайті його власниками);
користувальницьким (коментарі, фото, відео тощо, додаються на сайт
його відвідувачами).
Залежно від змісту контенту щодо сайту, на якому він розміщений,
розрізняють:
тематичний контент (наприклад, стаття про пошукової оптимізації на
сторінці web-ресурса про просування сайтів);
нетематичні (наприклад, відео про способи заробітку на порталі,
який присвячений автомобілям).
Крім іншого контент можна охарактеризувати як:
постійний;
поповнюваний (наприклад, контент блогів, новинних сайтів тощо).
За способами створення контент умовно можна розділити на три
групи:
Схвалювані пошуковими системами. Тексти, графіка, відео та інше
робляться самостійно власником ресурсу, купуються на біржах контенту або ж
створюються за домовленістю фахівцями у відповідних галузях. Найтрудомісткіший
метод.
Допустимі пошуковими системами. Власником сайту або найнятим
спеціалістом змінюється вже існуючий сторонній контент до такої міри, щоб
пошуковий робот визнав його унікальним, а первісний зміст залишився колишнім
(наприклад синонімізація текстів, зміна зображень в графічних редакторах тощо).
Метод не настільки трудомісткий і фінансововитратний, як попередній і ставлення
відвідувачів до нього гірше.
Несхвалювані пошуковими системами - копіпастинг (від англ. Copy і
paste - копіювати і вставляти) - запозичення (плагіат) чужих текстів, зображень
тощо. Найгірший варіант при просуванні сайту.
.3 Використання on-line контенту
Контент має важливе значення для просування сайту і є одним з
основоположних чинників, що впливають на позицію ресурсу в пошуковій видачі.
Успішне просування сайту передбачає відповідність контенту певним вимогам:
Унікальність. Неунікальний контент перешкоджає просуванню, знижує
авторитетність сайту, і досить часто взагалі не індексується пошуковими
машинами.
Оптимізованість під пошукові запити (дана вимога стосується
більшою мірою до текстового контенту). Виділені ключові фрази і слова в текстах
дають можливість пошуковим роботам найбільш точно визначати тематику і
спрямованість сторінок сайту, щоб згодом виводити їх як найбільш релевантні
результати відповідних запитах користувачів.
Інформативність і актуальність. Якісні цікаві тексти, аудіо та
відеоматеріали сприяють залученню цільової аудиторії і перетворенню її в
постійну.
Легкість сприйняття. Окремі елементи контенту повинні бути логічно
і зручно розташовані на інтернет-сторінці.
Трастовість (від англійського Trust - довіряти). Одна з головних
цілей використання контенту для просування полягає у формуванні у користувачів
довіри безпосередньо до сайту через контент, що її викликає. Бажане враження на
аудиторію повинне проводитися без жодного тиску і примусу, відкритої реклами:
відвідувачам не варто що-небудь нав'язувати, досить просто направити їх інтерес
у бік певних товарів (послуг, подій тощо залежно від спрямованості ресурсу).
Однією з головних особливостей нашого часу є постійне зростання
темпів виробництва інформації. Крім збільшення обсягів інформації до маштабів,
які унеможлюють її безпосередню обробку, виникла низка специфічних проблем,
пов’язаних із швидким розвитком інформаційних технологій.
Саме інформація, яка вже сьогодні циркулює в мережі Інтернет, є
тим невичерпним джерелом інформації та знань, що по своїй суті, за наявності
потужних пошукових систем, є найпривабливішим з погляду пошуку інформації,
знань. Необхідно також враховувати, що вже давно поетапно вирішується питання
щодо приведення до електронного вигляду всього того досвіду, який накопичено
людством за часи свого існування у документальному вигляді.
Зважаючи на це, вже нині виникає цікава ситуація - з одного боку,
є доволі потужний інформаційний масив (ресурси Інтернет) для прийняття рішень у
різноманітних сферах життя держави, суспільства та окремої особи, а з іншого -
брак необхідної для прийняття рішень інформації саме через її динаміку, обсяги,
джерел та неструктурованість [30].
Охоплення та узагальнення великих динамічних інформаційних
потоків, які безперервно генеруються в засобах масової інформації, вимагає
якісно нових підходів.
Саме тому останнім часом використовують системи, тісно пов’язані з
аналізом контенту. Під аналізом контенту найчастіше розуміють змістовний аналіз
інформаційних потоків з метою отримання необхідних якісних і кількісних зрізів,
який ведеться постійно протягом не визначеного заздалегідь проміжку часу [20].
Розділ 2. Аналіз on-line контенту
.1 Концепції та методи аналізу
Основи процедури контент-аналізу було позроблені Гарольдом
Ласвеллом. На сучасному етапі існує багато думок щодо почерговості етапів
аналізу контенту та ступеня їх важливості.
Виділяють такі стадії аналізу:
. Підготовка програми аналізу документів (маються на увазі
завдання, гіпотези, поняття, об'єкт аналізу і тощо);
На цьому етапі, як правило, формулюється так звана емпірична
теорія дослідження. Тобто, в ході підготовки до проведення аналізу,
систематизуються гіпотези, існуючі в контексті даної проблематики та
відкидаються ті з них, які не піддаються верифікації на даних інформаційного
масиву.
. Відбір джерел аналізу.
Необхідно визначити коло джерел, які містять у собі матеріали по
заданій темі. Далі важливо встановити додаткові умови відбору матеріалу:
визначити тип джерела (телебачення, преса, рекламні матеріали, радіо та тощо)
Потім потрібно визначити вид повідомлення (публіцистичні статті в електронному
або в друкованому вигляді, інформаційні замітки, рекламні плакати) роль агента
комунікації (відправник або одержувач повідомлення). Визначаються мінімальні та
максимальні границі об'єму тексту, їх протяжності, частота, час, місце і засіб
трансляції повідомлень цільовій аудиторії. Існують і інші критерії відбору
повідомлень, їх кількість і вибір варіюється залежно від поставлених завдань
дослідження. Можна виділити такі проміжні етапи:
.1. Визначення кола і обсягу документів, що є носіями необхідної
інформації (найменування, періодичність виходу, період, тиражі);
.2. Побудова вибірки: які документи та за якими критеріями будуть
аналізуватись;
.3. Перевірка побудови вибіркової сукупності;
. Визначення емпіричних моделей аналізу, проведення вибірки (тобто
підбір комунікаційних органів, вибір матеріалів за ті чи інші періоди часу,
визначення видів повідомлень, типу вибірки);
У разі обмеженої кількості матеріалу по заданій темі, вибіркова
сукупність може бути еквівалентна генеральній. Класичне трактування методу
аналізу контенту передбачає можливість скорочення вибіркової сукупності
повідомлень при їх схожості й однорідності. Це допустимо, якщо обсяг генеральної
сукупності дуже великий. Вибірка при дослідженні великих сукупностей даних
випадкова. Безумовно, необхідно розрахувати її обсяг так, щоб вона залишалася
репрезентативною, важливо визначити допустиму похибку вибірки. Варто додати, що
часто обсяг вибіркової сукупності визначається дослідниками, виходячи з понять
здорового глузду, доступності матеріалу, терміновості дослідження, а не
розрахунком допустимої помилки вибірки та репрезантивності масиву джерел.
. Розробка методики даного конкретного аналізу;
Можна виділити такі проміжні етапи:
.1. Класифікація соціальних ситуацій відповідно досліджувальних
проблем;
.2. Визначення одиниць аналізу;
.3. Перевірка надійності методики.
. Пілотажне дослідження, перевірка надійності методики;
. Збір первинної емпіричної інформації;
. Кількісна обробка зібраних даних;
. Інтерпретація здобутих результатів, висновки дослідження.
Вибір категорій аналізу
Категорія аналізу контенту - це поняття, яке показує один з
аспектів загального напрямку конкретного дослідження документів.
Вперше поняття «категорії аналізу» ввів М. Уіллі в 20-ті роки
нашого століття. Під час проведення дослідження «Провінційна газета» він
класифікував зміст за трьома критеріями:
) тема чи сфера соціальної дійсності;
) форма (новини, передова стаття та тощо),
) суміш першого і другого (наприклад, політичні новини).
Ці поняття назвали категоріями. М. Уіллі обгрунтував критерії, за
якими виділяються категорії. Треба, щоб їх можна було застосовувати до всіх
газет загального порядку, щоб вони давали можливість порівняти різні газети в
один час, одну газету у різні часи, різні газети у різні часи (тобто
висувається вимога універсальної порівнянності) і щоб ті категорії були
об'єктивними і точними, а елемент суб'єктивізму в них був зведений до
мінімуму.[6]
У кожному дослідженні - свої категорії. Адже вибір категорій
цілком залежить від цілей дослідження. Категорії показують напрямок аналізу,
те, на що дослідник звертає увагу. Від правильного підбору категорій багато в
чому залежать загальні підсумки дослідження. Категоріальна мережа - це
своєрідна схема, за якою дослідник проводить свій аналіз.
На цьому етапі можна припуститися двох помилок. Якщо прийняти
занадто вузькі категорії, то можна втратити частину змісту, яка в них не
увійде. А якщо взяти дуже узагальнені категорії, то багато в чому втрачається
оригінальність досліджуваних документів. Вибір категорій - це суто якісний
момент дослідження, на базі якого у подальшому застосовуються кількісні методи.
Вимоги до категорій
Успіх будь-якого контент-аналітичного дослідження багато в чому
залежить саме від правильного обрання категорій аналізу. Це обумовлює великі
вимоги, які ставляться до категорій.
Оскільки в процесі аналізу відбувається співвіднесення визначених
елементів тексту саме з цими категоріями, то дуже важливо, щоб вони були
такими:
чітко й однозначно сформульованими (у різних дослідників повинен
бути щодо них високий рівень згоди);
вичерпними, тобто такими, які обхоплюють всі частини змісту
документа, що визначені завданнями даного дослідження;
взаємовиключними, тобто одні й ті ж самі частини змісту документів
не повинні відноситися до різних категорій.
категорії повинні бути об'єктивними, незалежними і надійними, щоб
будь-який кодувальник, взявши на озброєння категорії дослідження, розумів їх
недвозначно. У нього не повинно виникати питань про те до якої ж категорії
віднести ту чи іншу одиницю змісту.
Категорії можуть підрозділятися на більш дрібні якісні одиниці -
підкатегорії. Так, наприклад, категорія «індивідуальні характеристики» може
підрозділятися на такі підкатегорії, як зовнішні і внутрішні характеристики
тощо.
Саме у такому випадку дослідження не залежатиме від суб'єктивних
думок окремих людей, а праця кодувальника буде суто технічною. І, нарешті,
категорії повинні бути доцільними, тобто відображати цілі дослідження і зміст
об'єкту аналізу.
Виділення одиниць аналізу
Одиниці аналізу - структурні одиниці, які репрезентовані щодо
всього тексту і його окремих істотних частин.[7]
Підставою для виділення одиниць аналізу може слугувати:
цілі та завдання дослідження;
специфіка конкретного об'єкта аналізу, тобто документа.
Одиницями аналізу можуть бути:
Окремі слова, словосполучення, терміни. Наприклад, економічні
поняття: ринок, зайнятість, приватизація, управління тощо; політичні:
демократія, референдум, вибори, влада тощо;
Теми, повідомлення, висловлені у смислових образах, статтях,
частинах тексту, які забезпечують повнішу характеристику змісту документа, ніж
попередні одиниці аналізу. Так, теми, в яких розглядаються міжнародне становище
України, перехід до ринкових відносин, боротьба зі злочинністю, спосіб життя та
здоров'я нації тощо.
Прізвища історичних діячів, політиків, видатних учених і діячів
мистецтва, представників різноманітних соціальних спільнот, що є певним
узагальненим типом діяча, якому притаманні певні соціальні риси. Їх аналіз дає
досліднику важливу інформацію про досліджувану історичну епоху, домінування
конкретних політичних, соціально-економічних ідей, впливу певних діячів на
формування громадської думки тощо. До цієї групи можна також віднести
згадування організацій, закладів, інших соціальних інститутів.
Судження, закінчена думка, логічний ланцюг. Це найбільш складні
одиниці аналізу, оскільки мають великий ступінь конструктивності. Їх структура
є більш диференційованою, ніж в інших одиницях аналізу, і містить кілька
елементів.
Складні види аналізу контенту звичайно оперують не однією, а
кількома одиницями аналізу. Одиниці аналізу, які взято ізольовано, можуть бути
неправильно витлумачені, тому вони розглядаються на основі більш широких
лінгвістичних або змістовних структур, що вказують на характер розчленування
тексту в межах якого ідентифікується присутність або відсутність одиниць
аналізу - контекстуальних одиниць. Наприклад, для одиниці аналізу «слово»
контекстуальна одиниця - «речення».[8]
Необхідно встановити одиницю підрахунку - кількісну міру
взаємозв'язку текстових і позатекстових явищ.
Кількісний та якісний аналіз контенту
Кількісний аналіз має обов'язково включати стандартизовані
процедури підрахунку виділених категорій. Для формулювання висновків вирішальне
значення мають кількісні величини, які характеризують ту чи іншу категорію.
Наприклад, якщо дослідник прагне отримати уявлення про те наскільки значиме
поняття «мирне врегулювання» для лідерів ворогуючих сторін і згоден з допущенням,
що воно приблизно визначається частотою згадування цього поняття в офіційних
промовах, то тоді, після відповідних арифметичних підрахунків, він отримає
певні кількісні показники. Показники можуть відрізнятися або, навпаки, бути
близькі за абсолютним значенням, яке буде враховуватися при інтерпретації
результатів обробки. Завдання можна ускладнити поставивши в якості попередньої
умови виділення всіх змістовних у смисловому відношенні одиниць відповідних
текстів, а потім підрахувавши відносну значимість даного вираження в порівнянні
з іншими. Примітно, що в обох випадках основна частина підрахунків може бути
виконана із застосуванням простих комп'ютерних програм.
Якісний аналіз націлений на поглиблене змістовне вивчення
текстового матеріалу, в тому числі з точки зору контексту, в якому представлені
виділені категорії. Підсумки формулюються тут з урахуванням взаємозв'язків
змістовних елементів і їх відносної значущості (рангом) у структурі тексту.
Так, для того щоб порівняти ставлення різних політиків до проблеми мирного
врегулювання, дослідник повинен прагнути не просто виділити відповідне поняття,
а й визначити чи є його проблематика головною в системі декларованих позицій,
варіанти її конотації, ступінь деталізації, емоційне забарвлення тощо. Залежно
від завдань дослідження якісний аналіз може бути доповнений деякими елементами
кількісного аналізу.
Типовий комплекс контент-моніторингу містить такі автоматизовані
підсистеми (рис. 1) [39]:
збору і обробки інформації з мережі Інтернет;
забезпечення доступу до повнотекстових баз даних;
аналізу та узагальнення інформації.
Рис. 1. Основні технологічні процеси системи контент-моніторингу
У відповідності своєму основному призначенню, перша підсистема
забезпечує:
збір та обробку інформації з різноманітних веб-ресурсів та її
форматування;
виявлення ключових слів та понять;
автоматичну рубрикацію;
виявлення змістового дублювання документів;
вибіркове розповсюдження інформації.
Головна задача другої підсистеми - формування баз даних та
забезпечення доступу до неї користувачів, а саме:
формування оперативних та ретроспективних баз даних;
ротація баз даних;
персоналізація роботи користувачів, збереження їх персональних
запитів та джерел, ведення статистики роботи;
забезпечення пошуку в базах даних;
генерація вихідних форм;
інформаційна взаємодія з базами даних інших підсистем.
Підсистема аналізу та узагальнення інформації забезпечує:
формування інформаційних портретів;
формування дайджестів;
виявлення тематичних сюжетів;
побудову таблиць взаємозв’язків понять;
розрахунок рейтингів понять.
.2 Архітектура систем аналізу
Процес відбору необхідної інформації з загального інформаційного
потоку вимагає великих затрат часу. Перед людством стала проблема створення
інтелектуальних систем пошуку необхідної інформації. Розвиток методів запису і
зберігання даних призвело до бурхливого зростання обсягів збираємої і
аналізуємої інформації. Обсяги даних настільки значні, що людині просто не під
силу проаналізувати їх самостійно, хоча необхідність проведення такого аналізу цілком
очевидна, адже в цих «сирих» даних укладені знання, які можуть бути використані
при прийнятті рішень. Для того щоб провести автоматичний аналіз даних,
використовується Data Mining.Mining - це технологія виявлення в «сирих» даних
раніше невідомих нетривіальних практично корисних і доступних інтерпретації
знань, необхідних для прийняття рішень в різних сферах людської діяльності
[29]. Data Mining є одним з кроків Knowledge Discovery in Databases.
Інформація, знайдена в процесі застосування методів Data Mining,
повинна бути нетривіальною і раніше невідомою. Знання повинні описувати нові
зв’язки між властивостями, передбачати значення одних ознак на основі інших і
тощо. Знайдені знання повинні бути застосовні і на нових даних з деяким
ступенем достовірності. Корисність полягає в тому, що ці знання можуть
приносити певну вигоду при їх застосуванні. Знання повинні бути в зрозумілій
для користувача не математика вигляді. Наприклад, найпростіше сприймаються
людиною логічні конструкції «якщо... то...». Більше того, такі правила можуть
бути використані в різних СУБД в якості SQL-запитів. У випадку, коли витягнуті
знання непрозорі для користувача, повинні існувати методи постобробки, що
дозволяють привести їх до інтерпретуємого виду.
Алгоритми, що використовуються в Data Mining, вимагають великої
кількості обчислень. Раніше це було стримуючим фактором широкого практичного
застосування Data Mining, проте сьогоднішнє зростання продуктивності сучасних
процесорів зняло гостроту цієї проблеми. Тепер за прийнятний час можна провести
якісний аналіз сотень тисяч і мільйонів записів.
Завдання, які вирішуються методами Data Mining:
Класифікація - це віднесення об’єктів (спостережень, подій) до
одного з наперед відомих класів.
Регресія, у тому числі завдання прогнозування. Встановлення
залежності безперервних вихідних від вхідних змінних.
Кластеризація - це угрупування об’єктів (спостережень, подій) на
основі даних (властивостей), що описують суть цих об’єктів. Об’єкти усередині
кластера повинні бути «схожими» один на одного і відрізнятися від об’єктів, що
ввійшли в інші кластери. Чим більше схожі об’єкти усередині кластера і чим
більше відмінностей між кластерами, тим точніше кластеризація.
Асоціація - виявлення закономірностей між пов’язаними подіями.
Прикладом такої закономірності служить правило, яке вказує, що з події X
випливає подія Y. Такі правила називаються асоціативними.
Послідовні шаблони - встановлення закономірностей між пов’язаними
в часі подіями, тобто виявлення залежності, що якщо відбудеться подія X, то
через заданий час відбудеться подія Y.
Аналіз відхилень - виявлення найбільш нехарактерних шаблонів.
Проблеми бізнес аналізу формулюються по-іншому, але рішення
більшості з них зводиться до тієї чи іншої задачі Data Mining або до їх
комбінації. Наприклад, оцінка ризиків - це вирішення завдання регресії або
класифікації, сегментація ринку - кластеризація, стимулювання попиту -
асоціативні правила. Фактично, завдання Data Mining є елементами, з яких можна
зібрати рішення переважної більшості реальних бізнес завдань.
Для вирішення вищеописаних задач використовуються різні методи і
алгоритми Data Mining. З огляду на те, що Data Mining розвивався і розвивається
на стику таких дисциплін, як статистика, теорія інформації, машинне навчання,
теорія баз даних, цілком закономірно, що більшість алгоритмів і методів Data
Mining були розроблені на основі різних методів з цих дисциплін. Наприклад,
процедура кластеризації k-means була просто запозичена з статистики. Велику
популярність отримали такі методи Data Mining як нейронні мережі, дерева
рішень, алгоритми кластеризації, в тому числі і масштабовані, алгоритми
виявлення асоціативних зв’язків між подіями тощо [44].
Пошук в мережевому середовищі може стати більш ефективним за
рахунок технологій глибинного аналізу текстів (Text Mining), знаходження в
текстах аномалій і трендів. Розроблені на основі статистичного і лінгвістичного
аналізу, а також методів штучного інтелекту, технології Text Mining призначені
для проведення смислового аналізу. Завдання - вибирати з текстів найбільш
ключову і значущу інформацію для користувачів [35,50]. Важлива компонента
технологій Text Mining пов’язана з витягом з тексту характерних елементів або
ознак, які можуть використовуватися в якості ключових слів, метаданих,
анотацій. Ще одне завдання Text Mining - віднесення документів до деяких
категорій із заданої схеми їх систематизації. Крім того, Text Mining - це новий
вид пошуку, який на відміну традиційних підходів не тільки знаходить списки
документів, формально релевантні запитам, але і допомагає в розумінні змісту
текстів. Таким чином, користувачеві не потрібно буде самому «просіювати»
величезну кількість неструктурованої інформації. Text Mining - це алгоритмічне
виявлення раніше невідомих зв’язків у вже наявних даних. Застосовуючи Text Mining,
користувачі можуть отримувати нову цінну інформацію - знання.
Слід зауважити, що технології глибинного аналізу тексту історично
передувала технологія видобутку даних (Data Mining), методологія та підходи
якої широко використовуються і в методах Text Mining.
Сформувавшись в середині 90-х років ХХ століття як напрямок
аналізу неструктурованих текстів, технології Text Mining відразу ж взяла на
озброєння методи Data Mining, такі як класифікація або кластеризація. В Text
Mining з’явилися і додаткові можливості, такі як автоматичне реферування
текстів і виявлення феноменів - понять і фактів. Можливості сучасних систем
Text Mining можуть застосовуватися при управлінні знаннями для виявлення
шаблонів в текстах, для автоматичного «проштовхування» або розподілу інформації
з потрібних користувачам профілів, створення оглядів.
Одне з джерел концепції Text Mining - контент-аналіз. Поняття
контент-аналізу, коріння якого йдуть у психологію і соціологію, не має
однозначного визначення:
Контент-аналіз - це методика об’єктивно якісного та систематичного
вивчення змісту засобів комунікації.
Контент-аналіз - це систематична числова обробка, оцінка та
інтерпретація форми та змісту інформаційного джерела.
Контент-аналіз - це якісно-кількісний метод вивчення документів,
який характеризується об’єктивністю висновків і строгістю процедури й полягає в
квантифікованій обробці тексту з подальшою інтерпретацією результатів.
Контент-аналіз полягає в знаходженні в тексті певних змістовних
понять (одиниць аналізу), виявленні частоти їх появи і співвідношення з вмістом
всього документа.
Більшість з наведених визначень конструктивні, але через різні
початкові посилання вони породжують різні, іноді суперечливі алгоритми.
Прийнято розділяти методології контент-аналізу на дві області:
якісну і кількісну. Основа кількісного контент-аналізу - частота появи в
документах певних характеристик змісту (понять, феноменів). Якісний
контент-аналіз грунтується на самому факті присутності або відсутності в тексті
однієї або кількох характеристик змісту.
Відповідно до вже сформованої методології, до основних елементів
Text Mining відносяться: класифікація, кластеризація, вилучення фактів, понять,
реферування, відповідь на запити, тематичне індексування і пошук за ключовими
словами.
При класифікації текстів використовуються статистичні кореляції
для розміщення документів в певні категорії. Завдання класифікації - це
класична задача розпізнавання, де за деякою контрольною вибіркою система
відносить новий об’єкт до тієї чи іншої категорії. Особливість класифікації в
рамках концепції Text Mining полягає в тому, що кількість об’єктів і їх
атрибутів може бути дуже великою, тому повинні бути передбачені механізми
оптимізації цього процесу.
На відміну від класифікації, при кластеризації заздалегідь не
фіксуються певні категорії. Результатом кластеризації є автоматичне групування
інформації, в результаті якої створюються класифікаційні схеми, що забезпечують
ефективне охоплення великих обсягів даних. Кластеризація в Text Mining
розглядається як процес виділення компактних підгруп об’єктів з близькими
властивостями. При кластеризації система повинна самостійно знайти ознаки і
розділити об’єкти по групах. Кластеризація, як правило, передує класифікації,
оскільки дозволяє визначати групи об’єктів.Mining передбачає також побудову
семантичних мереж, аналіз зв’язків, які визначаються появою дескрипторів
(наприклад, ключових слів) в текстах.
Крім того, існує ще кілька завдань технології Text Mining,
наприклад, прогнозування, яке полягає в тому, щоб передбачити за значеннями
одних ознак тексту значення інших. Ще одне завдання - знаходження винятків,
тобто пошук документів, які своїми характеристиками виділяються із загальної
маси [33]. Для цього спочатку з’ясовуються середні параметри документів, а
потім досліджуються ті документи, параметри яких найбільш сильно відрізняються
від середніх значень. Зазвичай пошук винятків найчастіше проводиться після
класифікації або кластеризації для того щоб з’ясувати, наскільки останні були
точні.
Окремо від завдання кластеризації стоїть завдання пошуку
пов’язаних ознак (ключових слів, понять) окремих документів. Від прогнозу ця
задача відрізняється тим, що заздалегідь невідомо, за якими саме ознаками
реалізується взаємозв’язок - мета саме в тому і полягає, щоб знайти зв’язки
ознак. Це завдання схоже з кластеризацією, але не по безлічі документів, а по
безлічі ознак.
Витяг понять з тексту є технологією, що забезпечує отримання
інформації в структурованому вигляді. В якості структур можуть запитуватися як
відносно прості поняття (ключові слова, персони, організації, географічні
назви), так і більш складні, наприклад, ім’я персони, її посада в конкретній
організації і т.п.
Дана технологія включає три основні методи:Extraction - вилучення
слів або словосполучень, важливих для опису змісту тексту. Це можуть бути
списки термінів предметної області, персон, організацій, географічних назв, та
ін;Association Extraction - простежування зв’язків між витягнутими
поняттями;and Fact Extraction - витяг сутностей, розпізнавання фактів і подій.
Технологія витягу понять заснована на застосуванні спеціальних
семантико-лінгвістичних методів, які дають можливість отримувати прийнятну
точність і повноту.
Слід зазначити, що підходи до вилучення різних типів понять із
текстів істотно відрізняються як по контексту їх подання, так і за структурними
ознаками. Так, для виявлення приналежності документа до тематичної рубрики
можуть використовуватися спеціальним чином складені запити на
інформаційно-пошукових мовах, що включають логічні і контекстні оператори,
дужки і т.д. Виявлення географічних назв передбачає використання таблиць, в
яких крім шаблонів написання цих назв використовуються коди та назви країн,
регіонів і окремих населених пунктів.
Виявлені поняття можуть служити основою для побудови
багатопрофільних інформаційних портретів або інтерактивних ситуаційних карт
(мереж, вузлами якої є поняття, а ребрами - інформаційні зв’язки між ними), що
відповідають запитам користувачів. Безпосередньо за даними, представленими на
ситуаційній карті, що відбиває найбільш актуальні поняття (терміни, тематичні
рубрики, географічні назви, прізвища персон, назви компаній) можливе виявлення
взаємозв’язків, тобто самі ситуаційні карти можуть служити вихідними даними для
побудови мереж взаємозв’язків понять.
Оскільки веб-джерела, як правило, не є текстовими даними, то і
підходи до процесу отримання даних відрізняються в цьому випадку. У першу чергу
необхідно пам’ятати, що інформація в інтернеті зберігається у вигляді
спеціальної мови розмітки HTML, веб-сторінки можуть мати додаткову метаінформацію,
а також інформацію про структуру (семантику) документа, кожен веб-документ
знаходиться всередині деякого домену і до нього можуть застосовуватися правила
пошукової оптимізації. Тож для цього використовується технологія Web Mining,
яка з’явилася не так давно.Mining - застосування методів і алгоритмів Data
Mining для виявлення і пошуку залежностей і знань у мережі Інтернет [27].
Всі сайти мережі Інтернет зберігаються на веб-серверах. Щоб
отримати сторінку сайту, браузер посилає запити на веб-сервер. У відповідь на
них повертаються файли, необхідні для формування інтернет-сторінки у вікні
браузера.
Завантаживши сторінку, користувач переглядає наявну на ній
інформацію. Після чого він може перейти на іншу відповідно до структури сайту,
зв’язку в якій встановлюються за допомогою гіперпосилань. Для зручності
навігації сторінки можуть бути об’єднані в категорії, а вони в свою чергу в
розділи.
Всередині категорій між сторінками може бути різноманітна
структура (ієрархічна, послідовна, мережна). На більшості сайтів передбачений
швидкий перехід з будь-якої сторінки на головну. Залежно від обраної структури
користувач переміщується з однієї сторінки на іншу. На рис. 2 зображено
фрагмент структури сайту, де сторінки пронумеровані згідно з порядком їх
перегляду.
Рис. 2. Шлях користувача на сайті
Можна помітити, що між п’ятою та шостою сторінками прямого
посилання немає, але виходячи зі структури абсолютно очевидно, що після п’ятої
сторінки користувач повернувся до першої.
Виходячи з перерахованих особливостей розміщення інформації в
мережі Інтернет виникають різні складнощі аналізу веб-даних.
Всесвітня мережа зараз містить величезну кількість інформації,
знань. Користувачі на різних умовах можуть переглядати різноманітні документи,
аудіо-і відеофайли. Однак це різноманіття даних приховує в собі проблеми, які
можуть виникнути не тільки при аналізі, але і при пошуку необхідної інформації
в Інтернет.
Проблема пошуку потрібної інформації пов’язана з тим, що
користувач не завжди відразу може знайти необхідні йому електронні ресурси.
Лише невеликий відсоток посилань серед запропонованих пошуковими системами
приводить до необхідних документів. Також важко шукати неіндексовану інформацію
такими засобами.
Проблема виявлення нових знань. Навіть якщо знайдено безліч інформації,
для користувача витяг корисних знань є досить трудомістким і непростим
завданням. Сюди ж можна і віднести складності, пов’язані з осмисленням
відомостей, поняттям тих ідей, які були вкладені авторами.
Проблема вивчення споживачів пов’язана з наданням користувачеві
інформації, яка була б йому цікава. Це особливо актуально для електронних
торговельних порталів, які могли би «підказувати» користувачеві при виборі
товару.
У Web Mining можна виділити наступні етапи:
вхідний етап - одержання «сирих» даних із джерел (логи серверів,
тексти електронних документів);
етап перед обробки - дані представляються у формі, необхідної для
успішної побудови тієї чи іншої моделі;
етап моделювання;
етап аналізу моделі - інтерпретація отриманих результатів.
Це загальні кроки, які необхідно пройти для аналізу даних мережі
Інтернет. Конкретні процедури кожного етапу залежать від поставленого завдання.
У зв’язку з цим виділяють різні категорії Web Mining, до яких Web Mining
належать: аналіз використання веб-ресурсів, витяг веб-структур та витяг
веб-контенту [1].
Аналіз використання веб-ресурсів грунтується на витягу даних з
логів веб-серверів. Метою аналізу є виявлення переваг відвідувачів при
використанні тих чи інших ресурсів мережі Інтернет.
Тут вкрай важливо здійснити ретельне передопрацювання даних:
видалити зайві записи лога, які не цікаві для аналізу.
Витяг веб-структур розглядає взаємозв’язок між веб-сторінками,
грунтуючись на зв’язках між ними. Побудовані моделі можуть бути використані для
категоризації веб-ресурсів, пошуку схожих і розпізнавання авторських сайтів.
В залежності від поставленої задачі структура сайту моделюється з
певним рівнем деталізації. У найростішому випадку гіперпосилання представляють
у вигляді спрямованого графа:
= (D, L),
де D - це набір сторінок, вузлів або документів; L - набір
посилань.
Витяг веб-структур може бути використано як підготовчий етап для
вилучення веб-контенту.
Витяг веб-контенту вирішує непросте і трудомістке завдання пошуку
знань в мережі Інтернет. Воно засноване на поєднанні можливостей інформаційного
пошуку, машинного навчання і Data Mining.
Аналізується зміст документів: перебувають схожі за змістом слова
та їх кількість. Потім вирішується завдання кластеризації або класифікації. Так
документи групуються за смисловою близькістю.
Цей напрямок може бути використано для оптимізації пошуку
індексованих документів [4].
Загальний взаємозв’язок між категоріями Web Mining і завданнями
Data Mining зображена на рис. 3.
Рис. 3. Категорії Web Mining і завдання Data Mining
У бізнес-аналітиці Web Mining вирішує наступні завдання:
опис відвідувачів сайту (кластеризація, класифікація);
опис відвідувачів, які здійснюють покупки в інтернет-магазині
(кластеризація, класифікація);
визначення типових сесій і навігаційних шляхів користувачів сайту
(пошук популярних наборів, асоціативних правил);
визначення груп або сегментів відвідувачів (кластеризація);
знаходження залежностей при користуванні послугами сайту (пошук
асоціативних правил).
Усі описані вище технології ґрунтуються на первинній технології
Data Mining. Вони можуть реалізуватися із застосуванням самонавчаючихся систем,
до складу яких входять нейронні мережі, дерева рішень, словники, алгоритми
кластеризації, семантичні мережі зв’язків між словами та словосполученнями і по
суті базуються на одних і тих самих алгоритмах і принципах. Вони направлені в
основному на величезні обсяги різнорідної інформації, яку необхідно
класифікувати, побудувати зв’язки та зробити певні висновки (наприклад,
прогнозування).
.3 Технології аналізу
У системах інформаційного моніторингу більш вузько направленого
характеру можуть використовуватися більш спрощені способи інтеграції контенту.
Для того, щоб виділити в усьому об’ємі інформації потрібні дані
використовується синтаксичний аналіз або його ще називають парсингом.
Синтаксичний аналіз - це процес зіставлення лінійної послідовності
лексем (слів, токенів) мови з її формальною граматикою. Результатом зазвичай є
дерево розбору (синтаксичне дерево). Звичайно застосовується спільно з
лексичним аналізом. Синтаксичний аналізатор або парсер - це програма або
частина програми, що виконує синтаксичний аналіз [7].
При парсингу вихідний текст перетворюється в структуру даних,
зазвичай - в дерево, яке відображає синтаксичну структуру вхідної послідовності
і добре підходить для подальшої обробки.
Як правило, результатом синтаксичного аналізу є синтаксична
структура пропозиції, представлена або
у вигляді дерева залежностей, або у вигляді дерева складових, або у вигляді
деякої комбінації першого і другого способів подання.
Все, що має «синтаксис», піддається автоматичному аналізу:
мови програмування - розбір вихідного коду мов програмування, в
процесі трансляції (компіляції або інтерпретації);
структуровані дані - дані, мови їх опису, оформлення тощо.
Наприклад, XML, HTML, CSS, ini-файли, спеціалізовані конфігураційні файли
тощо;запити (DSL-мова);
математичні вирази;
регулярні вирази (які, в свою чергу, можуть використовуватися для
автоматизації лексичного аналізу);
формальні граматики;
лінгвістика - людські мови. Наприклад, машинний переклад та інші
генератори текстів.
Існує дві основні стратегії синтаксичного аналізу:
низхідна (top-down parsing), коли для даної пропозиції, виходячи з
початкового символу граматики, будують висновок;
висхідна (bottom-up parsing), коли даної пропозиції, виходячи з
символів самої пропозиції (терміналів), будують розбір.
Таким чином, розрізняють спадні і висхідні аналізатори.
Для того, щоб уявити, як це працює технічно, у якості прикладу
можна розглянути як працює спадний аналіз. Для цього граматику необхідно
замінити скороченою еквівалентною граматикою.
Розпізнавання сентенціальний форми в нашій мові можна виконати
алгоритмом, який реалізується кінцевим автоматом, а розпізнавач для нашої мови
з кінцевим числом станів можна представити у вигляді таблиці з двома входами,
яка представляє собою специфічний запис набору породжуючих правил, причому
число рядків станів таблиці дорівнює числу нетермінальних символів, а число
стовпців - числу термінальних символів граматики. Початковий стан - початковий
символ граматики. У клітинах таблиці записані наступні стани для даної пари
входів, порожні клітини - помилки [47].
Відмітна риса низхідного аналізу - це цілеспрямованість. На
кожному кроці аналізу спадні розпізнавачі формують мету - знайти висновок, що
починається з деякого нетермінального символу і породжує частину вхідного
рядка. Розпізнавач намагається досягти цієї мети шляхом спрямованого перебору
різних можливостей. Основна ідея спадного аналізу в наступному: починаючи
процес аналізу вхідного рядка S1, S2..., Sn, розпізнавач виходить з припущення,
що цей рядок є реченням вхідної мови. Звідси випливає головна мета аналізу -
знайти висновок (побудувати дерево).
Якщо існує такий висновок, то існують і проміжні породжуючі
правила, але для кожного нетермінального символу в граматиці може бути кілька
правил з різними правими частинами і яке саме правило слід застосувати,
заздалегідь не відомо. При невдалому виборі правила, допоміжна мета може
виявитися недосяжною, тоді потрібно спробувати застосувати інше правило.
Можливі випадки, коли для будь-якої допоміжної мети всі правила призводять до
невдачі. Опис процесу завершується, коли знайдений кінцевий висновок (ланцюжок)
або коли встановлено, що цього висновку не існує, тобто вхідний рядок не є реченням
цієї мови. Зазвичай спадний розпізнавач переглядає символи, що входять у рядки
і символи в правій частині застосовуючи правило «зліва - направо». Такі
розпізнавачі називають лівобічними [8].
В пам’яті машини правила формальної граматики можуть зберігатися у
вигляді синтаксичних таблиць.
Перекладачі широко застосовують комбінацію низхідних і висхідних
методів синтаксичного аналізу. Наприклад, низхідний аналіз виділяє відносно
великі синтаксичні конструкції (різні описи, оператори), кожен з яких потім
аналізується детальніше методами висхідного аналізу.
Загальна ідея висхідного аналізу полягає в наступному: вхідний
текст розглядається як рядок символів, розпізнавач описує частину рядка, яку
можна звести до нетермінального символу, таку частину рядка називають фразою.
Фразу, що прямо приводиться до нетермінального символу, називають такою,
безпосередньо приводимою. У більшості висхідних розпізнавачів відшукується
найлівіша безпосередньо приводима фраза, яка називається основою. Основа
замінюється нетермінальним символом, у знову отриманому рядку знову
відшукується основа, яка також замінюється нетермінальним символом і так далі.
процес триває або до отримання початкового символу, або до встановлення
неможливості приведення рядка до початкового символу. Послідовність проміжних
рядків, яка закінчується початковим символом утворює розбір. Якщо рядок не
приводиться до початкового символу, то вхідна програма синтаксично некоректна,
тобто не є формою цієї мови [9].
Другою складовою методів опрацювання текстової інформації є
лексичний аналіз, основною задачею якого є розбиття вхідного тексту, що
складається з послідовності одиночних символів, на послідовність слів, або
лексем, тобто виділити ці слова з безперервної послідовності символів. Усі
символи вхідної послідовності з цієї точки зору поділяються на символи, що
належать будь-яким лексемам, і символи, що розділяють лексеми (роздільники). У
деяких випадках між лексемами може і не бути роздільників. З іншого боку, в
деяких мовах лексеми можуть містити незначні символи [46].
Зазвичай всі лексеми поділяються на класи. Прикладами таких класів
є числа (цілі, вісімкові, шістнадцяткові, дійсні і т.д.), ідентифікатори,
рядки. Окремо виділяються ключові слова і символи пунктуації (іноді їх
називають символи-обмежувачі). Як правило, ключові слова - це деяка кінцева
підмножина ідентифікаторів. У деяких мовах сенс лексеми може залежати від її
контексту і неможливо провести лексичний аналіз у відриві від синтаксичного.
З точки зору подальших фаз аналізу лексичний аналізатор видає інформацію
двох сортів: для синтаксичного аналізатора, що працює слідом за лексичним,
істотна інформація про послідовність класів лексем, обмежувачів і ключових
слів, а для контекстного аналізу, що працює слідом за синтаксичним, важлива
інформація про конкретні значеннях окремих лексем (ідентифікаторів, чисел і
т.д.).
Таким чином, загальна схема роботи лексичного аналізатора така.
Спочатку виділяється окрема лексема (можливо, використовуючи
символи-роздільники). Ключові слова розпізнаються або явним виділенням
безпосередньо з тексту, або спочатку виділяється ідентифікатор, а потім
робиться перевірка на приналежність його безлічі ключових слів [57].
Якщо виділена лексема є обмежувачем, то він (точніше, певна його
ознака) видається як результат лексичного аналізу. Якщо виділена лексема є
ключовим словом, то видається ознака відповідного ключового слова. Якщо
виділена лексема є ідентифікатором - видається ознака ідентифікатора, а сам
ідентифікатор зберігається окремо. Нарешті, якщо виділена лексема належить якомусь
з інших класів лексем (наприклад, лексема представляє собою число, рядок і
т.д.), то видається ознака відповідного класу, а значення лексеми зберігається
окремо.
Лексичний аналізатор може бути як самостійної фазою трансляції,
так і підпрограмою, що працює за принципом «дай лексему». У першому випадку
(рис. 4а) виходом аналізатора є файл лексем, у другому (рис. 4б) - лексема
видається при кожному зверненні до аналізатору (при цьому, як правило, ознака
класу лексеми повертається як результат функції «лексичний аналізатор», а
значення лексеми передається через глобальну змінну). З точки зору обробки
значень лексем, аналізатор може або просто видавати значення кожної лексеми, і
в цьому випадку побудова таблиць об’єктів (ідентифікаторів, рядків, чисел і
т.д.) переноситься на більш пізні фази, або він може самостійно будувати
таблиці об’єктів. В цьому випадку як значення лексеми видається покажчик на
вхід у відповідну таблицю.
а б
Рис. 4. Результат роботи аналізатора
Робота лексичного аналізатора задається деяким кінцевим автоматом.
Однак, безпосередній опис кінцевого автомата незручний з практичної точки зору.
Тому для завдання лексичного аналізатора, як правило, використовується або
регулярний вираз, або праволінійна граматика. Всі три формалізми (кінцевих
автоматів, регулярних виразів і праволінейних граматик) мають однакову виразну
потужність. Зокрема, за регулярним виразом або праволінійною граматикою можна
сконструювати кінцевий автомат, що розпізнає ту ж саму мову.
Загалом схема роботи аналізатора (парсера), до якого входить і
синтаксичний, і лексичний аналізатор, зображена на рис. 5.
Рис. 5. Схема роботи аналізатора (парсера)
2.4 Оцінювання систем аналізу
Керуючись тим, що система інформаційного моніторингу являє собою
систему, що забезпечує автоматизований збір інформації, її структурування,
групування за семантичними ознаками, тематичний виборчий розподіл та надання
доступу до інформаційних баз даних у пошукових режимах, а також дозволяє
аналізувати зібрані дані, можна сформулювати критерії оцінювання систем
інтеграції Інтернет-контенту:
обучаємість програм збору інформації структурі обраних джерел;
можливість сканування інформації;
можливість нормування інформації;
можливість приведення інформації до внутрішньосистемного формату;
класифікація;
кластеризація;
доставка користувачам різними каналами;
можливість проведення аналізу зібраної інформації.
Також система, як програмний продукт, повинна відповідати певним
критеріям оцінювання інтерфейсу користувача (він же користувальницький
інтерфейс (англ. User interface) - різновид інтерфейсів, в якому одна сторона
представлена людиною (користувачем), інша - машиною/пристроєм і являє собою
сукупність засобів і методів, за допомогою яких користувач взаємодіє з різними,
найчастіше складними, машинами, пристроями і апаратурою.), а саме:
комфортність, що забезпечується за рахунок ергономічності,
урахування користувача (його психофізичних характеристик), швидкість
візуалізації (як запитів так і відповіді на запит).
функціональність - всі функції по спілкуванню з системою,
можливість доповнення функцій, розширення та можливість зміни інтерфейсу.
не надлишковість - не повинно повторюватись.
адаптивність - можна робити додаткові налагодження (налаштування).
простота інтерфейсу - чіткість та зрозумілість. Простота в
спілкуванні на мові користувача.
достатня повнота - можливість виконати всі функції які хоче
користувач.
Розділ 3. Опис програмного продукту «Система аналізу on-line
контенту»
.1 Функціональні вимоги до програмного продукту
Систематичний моніторинг кадрового ринку необхідний як
рекрутинговим агентствам, так і керівникам виробничих компаній. Він дозволяє
скласти загальну картину динаміки ринку: співвідношення попиту і пропозиції,
реальних і очікуваних зарплат, рівнів зайнятості та оплати праці в різних
регіонах, допомагає оцінити зміни і отримати порівняльні дані в синхронному
зрізі.
Говорячи про завдання, які дозволяють вирішити дослідження ринку
праці, також варто назвати визначення ринкової вартості фахівців, ознайомлення
з кращими практиками мотивації й утримання персоналу, надання допомоги в
раціональному розподілі бюджету. Моніторинг надає ту інформацію, яка дозволяє
швидко і грамотно реагувати на зміни в співвідношенні попиту та пропозиції в
сфері зайнятості, прогнозувати виникнення критичних ситуацій, планувати і
здійснювати активну політику на ринку праці, при необхідності вносити ті чи
інші корективи.
Необхідними складовими моніторингу ринку праці є огляди
співвідношення попиту та пропозиції в певних сегментах ринку. Вони формуються
на основі даних за кількістю резюме і вакансій в тій чи іншій області ринку
праці та дозволяють прогнозувати найближчі зміни. Також серед гравців кадрового
ринку популярні рейтинги найбільш затребуваних професій (в певному сегменті і
на ринку в цілому) і огляди зарплат фахівців. Рейтинги професій складаються
кадровими агентствами на основі даних про кількість вакансій на окрему позицію
за певний період. Однак результати таких досліджень можуть відрізнятися у
різних компаній в силу нерівномірного розподілу вакансій між ними. В даному
випадку найбільш об’єктивні рейтинги можуть надати великі агентства, які
обробляють значний відсоток від усіх наявних на ринку вакансій.
За підсумками року складаються також рейтинги провідних фахівців у
тій чи іншій галузі. Найчастіше це стосується представників топових позицій.
Одним з найбільш популярних видів досліджень є огляди мінімальних,
середніх і максимальних заробітних плат, які цікавлять як роботодавців, так і
шукачів.
В параметрах дослідження враховується також функціонал тієї чи
іншої вакансії. Огляд зарплат, відповідних одній і тій же посаді в різних
компаніях, може виявитися необ’єктивним, якщо не врахована різниця в переліку
обов’язків. Тому роботодавці, які проводять подібні аналізи без допомоги фахівців,
часто отримують спотворену картину стану біржі праці.
Для того щоб залучати та утримувати у своїй компанії
висококваліфікованих фахівців, роботодавець повинен отримувати постійно
оновлювані дані моніторингу кадрового ринку. Оскільки дослідження швидко
застарівають, роботодавець повинен отримувати оновлені дані щонайменше раз на
півроку чи на квартал. Особливо це стосується компаній, яким потрібні
дослідження з широкого спектру професій, оскільки зміни в системі мотивації і
оплати праці за різними спеціальностями відбуваються нерівномірно, найбільша
динаміка простежується в сфері IT, фінансів, банківської справи та маркетингу.
Роботодавець, який отримує огляди ринку праці раз на рік, ризикує пропустити
ключові зміни в тій чи іншій сфері.
Для роботодавця, як і для шукача, важливо знати межі мінімальних і
максимальних зарплат для конкретних фахівців в заданому регіоні. Ці дані є
одним з основних факторів, що формують фінансові очікування працівників. Однак
різниця між мінімальними і максимальними компенсаціями найчастіше виявляється
досить великою, тому межі зарплат можуть служити лише приблизними орієнтирами.
Звернення до подібних досліджень в першу чергу корисно для
шукачів, тому що в умовах дефіциту фахівців і постійного зростання зарплат
очікування кандидатів нерідко виявляються завищеними без об’єктивних причин.
Моніторингом кадрового ринку займаються не тільки кадрові
агентства та профільні ЗМІ. Аналітичні статті про ринок праці часто з’являються
в діловій пресі, однак такі матеріали допускають похибки односторонніми
судженнями. Якщо кадрова преса найчастіше проводить об’єктивні дослідження,
засновані на думках кількох експертів і аналізі широкої бази даних, то огляди в
неспеціальних виданнях у багатьох випадках написані з позиції одного експерта і
можуть бути необ’єктивними або просто занадто поверховими.
Тож інформаційними джерелами для створення системи моніторингу
ринку праці було обрано декілька найпопулярніших рекрутингових сайтів в межах
України для того, щоб можна було більш достовірно, так би мовити «з перших
рук», аналізувати ринок.
.2 Нефункціональні вимоги до програмного продукту
Оскільки розроблювана система інтеграції інтернет-контенту
являється вузько направленою, то більш доцільним є використання не громіздкої
технології парсингу в контексті створення регулярних виразів для збору і
обробки інформації з цільових веб-сайтів.
Парсинг - автоматизований збір контенту або даних з будь-якого
сайту або сервісу. Як правило, парсинг проводиться із застосуванням одного з
скриптових, серверних мов програмування: PHP, Perl та інших. Результат парсинга
найчастіше складається в базу даних, в файл, або видається в форматі XML [8].
Скрипт або програма, що займається, безпосередньо, збором,
аналізом і перетворенням необхідної інформації називається парсером.
Парсинг - це, по суті, перетворення «сирої» інформації в дані.
Тобто, наприклад, розбір та імпорт RSS стрічки, не є парсингом, оскільки формат
RSS є підмножиною стандартного формату XML.
Будь-який парсер складається з трьох частин, які відповідають за
три окремих процесу парсинга:
отримання контенту в початковому вигляді. Під отриманням контенту,
найчастіше мається на увазі скачування коду веб-сторінки, з якої необхідно
витягти дані або контент. Одним з найбільш розвинених рішень для отримання коду
необхідної сторінки є бібліотека cURL для мови PHP;
витяг і перетворення даних. У цій фазі відбувається вилучення
необхідних даних з отриманого, на першому етапі, коду сторінки. Найчастіше для
вилучення використовують регулярні вирази. Також на цьому етапі відбувається
перетворення витягнутих даних до потрібного формату, якщо це потрібно;
генерація результату. Завершальний етап парсинга. На ньому
відбувається виведення або запис отриманих, на другому етапі, даних, в
необхідний формат. Найчастіше, запис ведеться безпосередньо в базу даних.
У системі інформаційного моніторингу ринку праці у якості джерел
інформації, що буде аналізуватися є три рекрутингових сайти (сайти, що надають
змогу розміщувати вакансії та резюме): jobs.ua, job.ukr.net, work.ua. Ці сайти
мають різну структуру та наповнення сторінок, отже і побудова регулярних
виразів відрізняється для кожного з них.
Так, для jobs.ua побудова регулярних виразів має ряд особливостей.
Посилання на сторінку з вакансіями має наступний вигляд:
://www.jobs.ua/vacancy/search/?todo=search&keywords=XXX&city=0, де XXX
- пошукове слово.
Це посилання із вставленим пошуковим словом передається бібліотеці
cURL для отримання коду сторінки з результатами;
Посилання на кожну окрему вакансію на цьому сайті виглядає так:
<a href="/vacancy/view/номер вакансії/">
Основною ознакою посилання на вакансію в коді сторінки результатів
є «class="def_bl_vac"», що означає CSS-приналежність цього елементу.
Отже, усі посилання на сторінці з результатами, що мають атрибут
«class="def_bl_vac"» є посиланнями на сторінки із вакансіями.
Ітеративним методом формується список посилань зі сторінки, які згодом будуть
аналізуватися.
Структура сторінки з вакансією має структуру маркованого списку.
Виходячи з цього:
Назва компанії знаходиться першою в цьому списку, тому регулярний
вираз для цього елементу будується на аналізі першого контейнера
<li></li> на сторінці.
Місто компанії-роботодавця знаходиться на другому місці в списку,
тому регулярний вираз для цього елементу будується на аналізі другого
контейнера <li></li> на сторінці. Оскільки багато назв компаній
мають заборонені символи, які можуть порушити роботу бази даних, до функції
вилучення компанії-роботодавця зі сторінки додане екранування таких символів.
Заробітна плата знаходиться на третьому місці в списку, тому
регулярний вираз для цього елементу будується на аналізі третього контейнера
<li></li> на сторінці. Оскільки заробітна плата на сайті подана у
декількох варіантах (з позначками $, € або грн.), у функцію вилучення зарплати
зі сторінки доданий перебір варіантів цих позначок для коректного приведення
заробітної плати до єдиного формату і валюти. Обрана валюта - гривня. Для
приведення сумм до єдиної валюти використовується множення на приблизний
валютний курс.
Стать знаходиться на четвертому місці в списку, тому регулярний
вираз для цього елементу будується на аналізі четвертого контейнера
<li></li> на сторінці.
Вік знаходиться на п’ятому місці в списку, тому регулярний вираз
для цього елементу будується на аналізі п’ятого контейнера
<li></li> на сторінці.
Освіта знаходиться на сьомому місці в списку, тому регулярний
вираз для цього елементу будується на аналізі сьомого контейнера
<li></li> на сторінці.
Досвід роботи знаходиться на восьмому місці в списку, тому
регулярний вираз для цього елементу будується на аналізі восьмого контейнера
<li></li> на сторінці.
Посада знаходиться на дев’ятому місці в списку, тому регулярний
вираз для цього елементу будується на аналізі дев’ятого контейнера
<li></li> на сторінці.
Для сайту job.ukr.net побудова регулярних виразів має наступні
особливості:
Посилання на сторінку з вакансіями має наступний вигляд
://job.ukr.net/vacancy/?ShowSearchResults=1&CityId=0&RegionId=9&Keywords=XXX,
де XXX - пошукове слово. Це посилання із вставленим пошуковим
словом передається бібліотеці cURL для отримання коду сторінки з результатами;
Посилання на кожну окрему вакансію на цьому сайті виглядає так:
<a href="#"656868.files/image001.gif">
Рис. 7. Головна сторінка системи
#box-table-a
{ font-family: "Lucida Sans Unicode",
"Lucida Grande", Sans-Serif;size: 12px;: 15px;align: left;collapse:
collapse;: auto; }
#box-table-a th
{ font-size: 13px;weight: normal;: 8px;: #b9c9fe;top: 4px
solid #aabcfe;bottom: 1px solid #fff;: #039; }
#box-table-a td
{ padding: 8px;: #e8edff; bottom: 1px solid #fff;:
#669;top: 1px solid transparent; }
#box-table-a tr:hover td
{ background: #d0dafd;: #339; }
#box-table-b
{ font-family: "Lucida Sans Unicode",
"Lucida Grande", Sans-Serif;size: 12px;: 15px;align: center;collapse:
collapse;top: 7px solid #9baff1;bottom: 7px solid #9baff1; }
#box-table-b th
{ font-size: 13px;weight: normal;: 8px;: #e8edff;right: 1px
solid #9baff1;left: 1px solid #9baff1;: #039; }
#box-table-b td
Цей блок повністю описує таблицю результатів (рис. 8). Таблиця
оформлена у відтінках синього, розмір та колір шрифта підібраний таким чином,
щоб інформація в таблиці легко сприймалася. Якщо навести мишею на строку
таблиці, вона підсвітиться. Це зроблено для зручності сприймання інформації на
великих екранах.
Рис. 8. Сторінка із результатами пошуку
.title_in_analytics
{ font-family: Tahoma;size: 12px; }
інтернет інформаційний моніторинг
Блок описує заголовок сторінки з аналітикою.
Рис. 9. Сторінка аналітики запиту, графіки, діаграми, гістограми
Отже, інтерфейс у створюваної системи моніторингу ринку праці
достатньо простий та інтуїтивний. Оскільки система запропонована як
вбудовуваний модуль до сайту, то він не обтяжений зайвим дизайнерським
оформленням.
.5 Тестування програмного продукту
Тестування програмного продукту - це процес дослідження робото
спроможності програмного продукту з метою отримання інформації про якість
продукту [13].
Отже, робота із системою інформаційного моніторингу рику праці
починається із введення назви потрібної вакансії у строку пошуку (рис. 10) та
натискання кнопки «Знайти» або Enetr.
Рис. 10. Вікно пошуку системи інформаційного моніторингу ринку
праці
Після чого цей запит переноситься у пошук на вказані сайти і
здійснюється пошук на них. Потім програма зберігає результати пошуку, тобто
знайдені HTML-сторінки, в оперативну базу даних де їх аналізує як описано у
розділі 3 пункті 3.2. Потім результати аналізу, тобто знайдені необхідні дані,
записуються у ретроспективну базу даних. Після того, як проаналізуються перші
сторінки, програма починає шукати наступні сторінки з результатами пошуку
запиту, зберігати їх в оперативну базу даних, аналізувати їх та зберігати.
Перед записом до ретроспективної бази програма перевіряє оригінальність кожної
вакансії. Якщо в базі вже існує така ж вакансія (якщо співпадає її назва та
назва компанії-роботодавця), то вакансія не зберігається.
Після того, як програма проаналізувала усі знайдені сторінки за
запитом результати виводяться на екран у вигляді таблиці (рис. 11), що містить
колонки з назвю компанії-роботодавця, її містом, заробітною платнею, бажаною
статтю, назвою посади, бажаним віком, бажаною освітою та бажаним досвідом
роботи.
Рис. 11. Вивід результатів пошуку по запиту
Над таблицею зліва виводиться який пошуковий запит був введений і
кількість знайдених вакансій. Зправа над таблицею є посилання на завантаження
звіту, тобто файлу з розширенням *.xls, в якому буде ця таблиця з результатами
пошуку (рис. 12),
Рис. 12. Завантаження звіту по поточному запиту
та посилання на аналітику поточного запиту, в якій містяться
кругові діаграми процентного співвідношення потребованої освіти, статі та віку,
стовпцева діаграма, що відображає залежність «дата - кількість знайдених
вакансій» та графік, що відображає усереднені заробітні плати по містам.
Також в системі інформаційного моніторингу ринку праці є сторінка
загальної аналітики, на якій: на стовпцевій діаграмі відображена загальна
кількість результатів по запитам вакансій, на круговій діаграмі відображене
відсоткове співвідношення потребованої освіти за всіми вакансіями, у таблиці -
загальна кількість вакансій, що знаходяться в базі даних, загальна кількість
компаній-роботодавців та загальна кількість запитів, що вводилися у пошук і
дали результати з моменту останнього очищення бази даних.
А також на сторінці загальної аналітики є посилання на
завантаження звіту з розширенням *.xls, у якому міститиметься уся база даних із
запитами (та їх результатами), що вводилися у пошук і дали результати з моменту
останнього очищення бази даних.
Якщо пошуковий запит був введений невірно або не дав жодних
результатів (не виявилось жодної вакансії), то програма виводить повідомлення:
«Не знайдено вакансій!»
Протестувавши систему моніторингу ринку праці можна дійти висновку,
що при її розробці було досягнуто максимальної інтуїтивності і простоти у
користуванні та правильності її роботи в цілому, наочного відображення усіх
необхідних даних для аналізу ринку праці.
.6 Техніко-економічне обґрунтування
Сьогодні необхідність використання інформаційних систем (ІС) та
інформаційних технологій (ІТ) в управлінні підприємством вже не викликає
сумнівів. Адже дозволяє керівництву будь-якої компанії приймати правильні і
своєчасні стратегічні рішення навіть у найскладніших ситуаціях, коли необхідно
оперувати величезною кількістю інформації. Проте використання даних засобів
інформаційного менеджменту (ІМ) є не завжди економічно ефективним для
підприємства. Тому оцінка ефективності функціонування ІС та ІТ є необхідною
процедурою будь-якого підприємства, яка їх використовує.
Поняття ефективності у контексті інформаційного менеджменту
підприємства представляє собою певну результативність процесу, операції,
проекту, обумовлену як співвідношення результату до витрат, що забезпечили його
одержання. Економічною ефективністю є результативність виробництва,
співвідношення між результатами господарської діяльності й витратами праці та
капіталу на досягнення даного результату.
Іншими словами під ефективністю інформаційного менеджменту
розуміється комплекс показників, що характеризують позитивний вплив
експлуатації інформаційної системи, інформаційних технологій та інших технічних
засобів в управлінні економічною системою підприємства.
Ефективність використання інформаційної системи та інформаційних
технологій в управлінні економічними завданнями підприємства перебуває у прямій
залежності від двох головних факторів: впливу на підвищення рівня управління та
пов'язаного з ним поліпшення діяльності об'єкта через зниження витрат
підприємства. У зв'язку з цим, розрізняють два види ефективності: прямий та
непрямий [25].
Прямий ефект знаходить висвітлення у деяких результатних
показниках діяльності та може бути виражений в натуральних, вартісних, трудових
показниках (кількість вивільнених працівників управління, економія робочого
часу в людино-годинах, продуктивність праці управлінських працівників тощо).
Непрямий ефект відбивається у показниках виробничої господарської
діяльності підприємства завдяки використанню більш якісної інформації, але
важко піддається безпосередньому кількісному виміру.
У зв'язку з тим, що непряма ефективність проявляється у якісних
факторах, а пряма виявляється безпосередньо кількісними величинами, то ці види
ефекту ще називають (відповідно) якісними й кількісними.
Процеси управління інформаційною інфраструктурою підприємства, та
зокрема процеси впровадження ІТ, пов’язані з серйозними вкладами капіталу на
придбання техніки, розробку проектів, виконання підготовчих робіт і
забезпечення персоналу. Тому у ході реалізації даної концепції необхідне
здійснення економічного обґрунтування доцільності запланованих заходів.
Економічну ефективність розраховують на всіх етапах проектування й
впровадження інформаційної системи [24]:
) при обстеженні підприємства з метою створення інформаційної
системи - попередній розрахунок очікуваної економічної ефективності;
) на стадії технічного й робочого проектування - деталізований
розрахунок очікуваної економічної ефективності;
) після впровадження ІС у промислову експлуатацію - розрахунок
фактичної економічної ефективності.
Проте на ранніх стадіях виконання підготовчих та проектних робіт
розрахунки носять прогнозний характер. Щодо розрахунку економічної ефективності
після впровадження чи модернізації засобів інформаційного менеджменту виділяють
два методичних підходи, що базуються на розрахунку річного та інтегрального
економічного ефекту [40,41].
При розрахунку річного економічного ефекту відбувається порівняння
річного обсягу реалізованої продукції, витрат виробництва, прибутку від
реалізації у звітному періоді з аналогічними показниками в базисному періоді.
У випадку розрахунку інтегрального економічного ефекту
здійснюється порівняння показників витратної та прибуткової частин діяльності
підприємства за весь розрахунковий період від початку внесення змін в ІМ
підприємства.
Проте обидва методи розрахунку економічної ефективності не можуть
точно оцінити внесок від функціонування ІС та ІТ у загальний економічний
розвиток підприємства. Це обумовлено наявністю безлічі факторів, здатних
впливати на порівнювані показники. Наприклад, річний обсяг реалізованої
продукції може змінитися у зв'язку з впровадженням нових технологічних
розробок, зміною попиту або рекламної політики.
Тому для того, щоб визначити економічний ефект від використання ІС
та ІТ необхідно враховувати усі економічні, організаційні, технічні та
соціальні аспекти їх функціонування на всіх етапах розвитку [13]. Для цього
використовується цілий комплекс різноманітних методів аналізу, які можна
поділити на три групи: методи фінансового, якісного та прогнозного аналізу.
Фінансовий аналіз є загальноприйнятим інструментом обґрунтування
будь-якого бізнес-проекту. У методах даного аналізу використовуються традиційні
підходи щодо фінансового розрахунку економічної ефективності враховуючи специфіку
ІТ. Перевага фінансових методів - у їхніх основних принципах, запозичених з
класичної теорії визначення економічної ефективності. Дані методи
використовують загальноприйняті у фінансовій сфері критерії (чиста поточна
вартість, внутрішня норма прибутку тощо) і оперують поняттями притоку й відтоку
коштів, що вимагають конкретики й точності. Також за допомогою фінансових
методів можна оцінити економічні параметри впровадження й застосування ІС за
аналогією оцінки будь-якого іншого інвестиційного проекту [42].
Якісні методи оцінки доповнюють кількісні розрахунки, що може
допомогти оцінити всі фактори ефективності ІС і погодити їх з загальною
стратегією компанії. Ця група методів дозволяє фахівцям самостійно вибирати
найбільш важливі для них характеристики систем залежно від специфіки продукції
та діяльності підприємства та змінювати співвідношення між показниками за
допомогою коефіцієнтів значимості [43].
В прогнозних методах використовуються статистичні й математичні
моделі, що дозволяють оцінити ймовірність виникнення ризику. Дані методи
потрібні для оцінки майбутнього ефекту від застосування інформаційної системи,
але поки ще не так широко поширені в практиці, як інші [15].
Всі групи методів оцінки економічної ефективності функціонування
ІС та ІТ підприємства дозволяють отримати досить різносторонню інформацію щодо
використання засобів ІМ на всіх етапах їх розвитку. Але незважаючи на те, що в
сучасних умовах будь-яке підприємство має досить великий вибір різноманітних
методів і методологій оцінки ефективності використання ІС та ІТ, на практиці
більшість підприємств віддають перевагу аналізу за допомогою 2 показників:
показника сукупної вартості володіння TCO та показника повернення інвестицій
ROІ.
Показник TCO характеризує повний комплекс витрат на створення і
функціонування ІС, де окрім прямих витрат на розробку, впровадження й
експлуатацію ІС враховуються непрямі витрати, пов'язані з простоями та людським
фактором.
Сьогодні відомо декілька методів розрахунку TCO, всі вони дають
приблизно однакові результати й приводять до аналогічних висновків, тому ми
використаємо найпоширенішу концепцію розрахунку й аналізу ССВ від Gartner Group
[10]. Показник сукупної вартості володіння ІС розраховується за формулою:
= Пв+Нв, (1)
де Пв - прямі витрати;
Нв - непрямі витрати.
Прямі витрати відповідно розраховується за формулою:
Пв= Пв1+Пв2+Пв3+Пв4+Пв5, (2)
де Пв1 - капітальні вклади (програмно-апаратне забезпечення);
Пв2 - витрати на управління ІС;
Пв3 - технічна підтримка і аутсорсінг;
Пв4 - витрати на модернізацію ІМ;
Пв5 - витрати на комунікації.
Непрямі витрати, які можна поділити на 2 групи, розраховуються за
формулою:
Нв= Нв1+Нв2, (3)
де Нв1 - витрати, пов’язані з простоями ІС з ряду причин;
Нв2 - витрати, пов’язані з людським фактором.
Але розрахунок тільки ТСО не дає обґрунтованої оцінки щодо
доцільності використання інформаційної системи. Адже необхідно враховувати не
тільки витрати, але й вигоди від впровадження ІС, які визначаються за допомогою
показника повернення інвестицій (ROІ). Цей метод дозволяє оцінити
рентабельність вкладень у купівлю й впровадження ІС та розраховується за
формулою [11]:
І = (Payback-TCO)/TCO *100%, (4),
де Payback - вигоди від впровадження системи.
Як правило, під вигодою або основним ефектом від впровадження
інформаційних систем розуміється збільшення продуктивності праці:
) економія робочого часу свіробітників підприємства;
) ефективне застосування людських ресурсів на підприємстві;
) скорочення вартості здійснення тієї або іншої трансакції на
підприємстві.
Ще один аспект, що серйозно впливає на ефективність ІС - рівень
зрілості управління ІТ. Є декілька методологій оцінки рівня зрілості ІС та ІТ
функціонуючих на підприємстві таких, як модель зрілості створення програмного
забезпечення СММ (англ. Capability Maturity Model), методологія Сobit (англ.
Control Objectives for Information Technology) та IMM (Infrastructure Maturity
Model] від Gartner Group, концепція якої використовується Microsoft [1, 12].
Згідно з методологією Сobit виділяють шість рівнів зрілості:
. Нульовий. Системи управління ІТ не існує, і необхідність її
створення не усвідомлюється.
. Початковий. Підхід керівництва до рішення проблем ІС та ІТ
хаотичний, визнання існування проблем випадкове й непослідовне.
. Повторюваний. Існує загальне усвідомлення проблем управління ІТ.
Однакові завдання вирішуються різними людьми подібними методами. Однак відсутні
формальні процедури й розподіл відповідальності. Досить висока залежність від
окремих співробітників, що підвищує ймовірність помилок. Використовуються
базові методи оцінки ефективності.
. Стандартизований. Домінуючою стає роль ІС. Всі процедури
стандартизовані й документовані, та добре налагоджена система користування ІС
співробітниками. Діяльність ІТ-підрозділу регламентована. Однак механізми контролю
якості їх функціонування недостатньо відпрацьовані.
. Керований. Здійснюється безперервний моніторинг інформаційних
процесів, встановлює стандарти якості й контролює їх виконання. Проводиться
постійна робота над підвищенням їхньої ефективності.
. Оптимізуючий. В організації сформоване поглиблене і чітке
розуміння процесів управління ІС, проблем і рішень у сфері ІТ, а також можливих
перспектив розвитку.Врахування рівня зрілості управління ІС та ІТ підприємства
при оцінці економічної ефективності іх функціонування є доволі важливим. Адже
від рівня зрілості управління інформаційного інфраструктурою підприємства
залежить достовірність отриманих при оцінці економічної ефективності
результатів.
Залежності від того, які методи аналізу економічної ефективності
впровадження і застосування ІС та ІТ використовуються, сформувалися певні
наукові підходи щодо оцінки проектів у сфері ІМ.
Одним з таких наукових підходів є портфельний підхід. Його
сутність полягає у формуванні правильно складеного ІТ-портфеля для відповідного
підприємства, який містить вичерпний перелік бізнес-процесів підприємства та
інструментарій їхньої автоматизації й оптимізації у порівнянні. Оцінка
ефективності ІТ-портфеля здійснюється, як правило, з погляду продуктивності
праці. Портфель також містить відомості про вартість проектів з впровадження та
підтримки ІТ-рішень. Портфельний підхід призначений в першу чергу для
керівництва підприємства, яке у простій і доступній формі одержує всю необхідну
інформацію для вибору стратегічного напрямку у розвитку ІТ на підприємстві.
Бюджетний підхід застосовується на основі передумов про
гарантовану ефективність ІС та ІТ при правильно побудованих процедурах
бюджетування, мотивації персоналу й контролю за витратами засобів.
Даний підхід застосовується компаніями за вже сформованою
інформаційною інфраструктурою, коли більша частина ІТ-бюджету використовуються
не для впровадження нових рішень, а на підтримку існуючого ІМ. Як правило,
компанії визначають частку у відсотках від доходу підприємства, яка витрачається
на інвестиції у ІТ. При цьому ключовим параметром в обґрунтуванні для
формування такого бюджету є ріст продуктивності праці.
Ще одним з наукових підходів оцінки економічної ефективності
функціонування ІС та ІТ є проектний підхід, основною метою якого є визначення
строку окупності, внутрішньої рентабельності і чистого прибутку від проекту з
урахуванням вартості капіталу. Але розрахунок цих показників вимагає обліку
багатьох параметрів (вартість капіталу, вільні потоки готівки, ефект від
податків, залишкова вартість тощо.), які за відсутності добре налагодженої на
підприємстві інформаційної системи одержати складно. У зв'язку з цим
найпоширенішою методологією оцінки при цьому підході є ROІ з погляду наочності
й простоти для керівників компанії та інвесторів. ROІ розраховується по
функціональних підрозділах, включених у проект впровадження інформаційної
системи. Недолік даної методології полягає у тому, що в рамках одного
функціонального підрозділу дуже складно кількісно оцінити якісну зміну в суті
бізнес-процесів.
На сьогоднішній день сформувалася досить велика кількість
різноманітних методологій аналізу економічної ефективності впровадження і
функціонування засобів ІМ, проте не дивлячись на це, на даний момент немає
єдиної методології, яка б підходила для оцінки інформаційної інфраструктури
будь-якого підприємства. Тому існує досить складна проблема правильного вибору
конкретного методу оцінки ефективності, яка вимагає від управління компаній
диференційованого підходу до кожного кроку впровадження і використання ІС та ІТ
у своїй діяльності.
При використанні вузьконаправлених програм інформаційного
моніторингу, споживачі інформаційних технологій можуть істотно знизити витрати,
враховуючи відсутність необхідності користуватися платними програмами, які
охоплюють набагато більшій спектр інформації. При цьому підвищується
ефективність пошуку та аналізу інформації, а отже, і точність аналітичних
даних. Ці програми дозволяють вирішити питання збору і обробки необхідної
інформації із суттєвою економією часу. Економія робочого часу, в свою чергу,
призводить до зменшення витрат на заробітну платню і нарахувань на неї,
зниження накладних витрат, а також економія енергоресурсів. Тому розробка
різноманітних програм вузько направленого інформаційного моніторингу є актуальною.
Програми, які виконують моніторингові функції, виконують дві головних вимоги:
надають актуальну і точну інформацію та економлять час.
Ключовим фактором, що пояснює економічну доцільність є вузька
направленість і модульність системи - інформація швидко відшукується,
оброблюється і зберігається, а результат роботи в якості аналітики оперативно
генерується. Крім того, використання програм інформаційного моніторингу
дозволяє вирішувати задачі не тільки аналітики вузького спектру, але і задачі,
пов’язані із соціальною аналітикою. Все це дозволяє істотно зменшити витрати та
підвищити ефективність роботи з інформацією.
.7 Охорона праці
.7.1 Правові питання охорони праці
За визначенням Закону України «Про охорону праці», охорона праці -
це система правових, соціально-економічних, організаційно-технічних,
санітарно-гігієнічних і лікувально-профілактичних заходів та засобів,
спрямованих на збереження життя, здоров’я і працездатності людини у процесі
трудової діяльності [23].
Законодавство про охорону праці складається з Закону України «Про
охорону праці», Кодексу законів про працю України, Закону України «Про
загальнообов’язкове державне соціальне страхування від нещасного випадку на
виробництві та професійного захворювання, які спричинили втрату працездатності»
та прийнятих відповідно до них нормативно-правових актів.
Під час укладання трудового договору роботодавець повинен
проінформувати працівника під розписку про умови праці та про наявність на його
робочому місці небезпечних і шкідливих виробничих факторів, які ще не усунуто,
можливі наслідки їх впливу на здоров’я та про права працівника на пільги і
компенсації за роботу в таких умовах відповідно до законодавства і колективного
договору.
Згідно статті 153 Кодексу законів про працю, умови праці на
робочому місці, безпека технологічних процесів, машин, механізмів, устаткування
та інших засобів виробництва, стан засобів колективного та індивідуального
захисту, що використовуються працівником, а також санітарно-побутові умови
повинні відповідати вимогам нормативних актів про охорону праці.
.7.2 Організація і обладнання робочих місць користувачів ПК з
точки зору охорони праці
Загалом основний підхід до вирішення проблем охорони праці
користувачів ПК зводиться до встановлення суворого контролю за відповідністю
апаратних і програмних засобів, а також умов їх експлуатації ергономічним
вимогам. Наведемо деякі з них:
дотримання обмежень за медичними показаннями;
уважне відношення до характеристик дисплеїв;
правильна організація робочого місця оператора;
правильна організація робочого часу оператора.
Розглядаючи детально кожну з них, можна привести рекомендації
спеціального характеру:
необхідно дотримуватись обмеження на роботу з ПК для
працівників, що страждають на захворювання опорно-рухового апарату, очей,
шкіри, а також для вагітних жінок;
використовувати дисплеї з високою роздільною здатністю і
розміром екрану не менше 15” (Hi-Resolution, Non-Interlaced, Low-Radiation);
краще вибирати відеоадаптери з високим розділенням і
частотою кадрової розгортки не менше 85 Гц;
обов’язково ставити на дисплеї екранні фільтри з
антистатичним покриттям, що у декілька разів знижує стомлюваність очей і
концентрацію пилових частинок поблизу екрану монітора;
сидіти не ближче 70 см від дисплея;
екран дисплея повинен бути орієнтований так, щоб
виключити відблиски від джерел світла;
не слід розташовувати дисплей безпосередньо під джерелом
освітлення або впритул з ним;
бажано, щоб освітленість робочого місця оператора не
перевищувала 2/3 нормальної освітленості приміщення;
стіна позаду дисплея повинна бути освітлена приблизно так
само, як його екран;
при розміщенні в одній кімнаті декількох ПК відстань від
робочого місця кожного оператора до задніх і бічних стінок сусідніх ПК повинна
складати не менше 1,2 м;
робоче місце повинне бути обладнане так, щоб виключити
незручні пози і тривалі статичні напруги тіла;
загальний час роботи з дисплеєм не повинен перевищувати
50% всього робочого часу оператора;
не слід перевищувати темп роботи порядку 10 тисяч
натиснень клавіш в годину (приблизно 1500 слів);
при звичній роботі з ПК необхідно робити 15-хвилинні
перерви через кожні 2 години, а при інтенсивній роботі - через кожну годину.
.7.3 Характеристика виробничого середовища і чинники, що діють на
оператора в процесі його праці
На робочому місці користувач ПК зазнає дії наступних несприятливих
чинників:
підвищене значення електричного струму;
підвищений рівень статичної електрики;
підвищений рівень електромагнітних випромінювань;
підвищений рівень м’якого рентгенівського випромінювання;
підвищений рівень шуму на робочому місці;
недостатня освітленість робочого місця;
несприятливий мікроклімат;
психофізіологічні шкідливі і небезпечні виробничі
чинники.
Необхідно розробити засоби захисту від цих шкідливих чинників. До
даних засобів захисту відносяться: вентиляція, штучне освітлення,
звукоізоляція. Існують нормативи, що визначають комфортні умови і гранично
допустимі норми температури повітря, шуму, освітленості. У системі заходів, що
забезпечують сприятливі умови праці, велике місце відводиться естетичним
чинникам: оформлення виробничого інтер’єру, устаткування, застосування
функціональної музики та ін. Важливу роль виконує забарвлення приміщень, яке
повинне бути світлим. У даному розділі дипломного проекту розраховується
необхідна освітленість робочого місця.
Розвиненню стомлюваності на виробництві сприяють наступні чинники:
неправильна ергономічна організація робочого місця,
нераціональні зони розміщення устаткування по висоті від підлоги, по фронту від
осі симетрії і т.д.;
характер протікання праці: трудовий процес організований
таким чином, що оператор вимушений з перших хвилин робочого дня вирішувати
найскладніші і трудомісткі задачі, тоді як в перші хвилини роботи функціональна
рухливість нервових клітин мозку низька.
Важливе значення має чергування праці і відпочинку, зміна одних
форм роботи іншими.
Метеорологічні умови (температура, відносна вологість, рухливість
повітря) у робочій зоні виробничих помешкань повинні задовольняти вимогам
Державного Стандарту 12.1.005-88. «Загальні санітарно-гігієнічні вимоги до
повітря робочої зони».
Освітленість повинна відповідати нормам, встановленим у Галузевому
Стандарті 5472003-82 «Освітлення штучне в експлуатаційних підприємствах ЦА.
Норми і вимоги безпеки».
Для обслуговуючого персоналу й операторів при роботі з ПК
небезпечним чинником є вплив високого рівня статичної електрики (ДЕСТ
12.1.045-84 «Припустимі рівні напруженості електростатичних полів»).
Статична електрика є джерелом факторів, що впливають на точність
відтворення інформації, вона призводить до відмов елементів, є причиною
виникнення пожеж і вибухів, несприятливо впливає на організм людини.
Ступінь шкідливого впливу електромагнітних полів на організм
людини визначається напруженістю електромагнітного поля, довжиною хвилі і
тривалістю перебування організму в зоні діяльності електромагнітних полів.
.7.4 Вимоги електричної та пожежної безпеки
Електробезпека
ПК, периферійні пристрої ПК та устаткування для обслуговування,
ремонту та налагодження ПК, інше устаткування (апарати управління,
контрольно-вимірювальні прилади, світильники тощо), електропроводи та кабелі за
виконанням та ступенем захисту мають відповідати класу зони за ПВЕ, мати
апаратуру захисту від струму короткого замикання та інших аварійних режимів.
Під час монтажу та експлуатації ліній електромережі необхідно повністю
унеможливити виникнення електричного джерела загоряння внаслідок короткого
замикання та перевантаження проводів, обмежувати застосування проводів з
легкозаймистою ізоляцією і, за можливості, перейти на негорючу ізоляцію.
Для протирання підлоги застосовують рідини, пара яких не утворює
вибухопожежонебезпечних сумішей з повітрям та не викликає корозії контактів
електричних з’єднань.
Для підключення переносної електроапаратури застосовують гнучкі
проводи в надійній ізоляції. Тимчасова електропроводка від переносних приладів
до джерел живлення виконується найкоротшим шляхом без заплутування проводів у
конструкціях машин, приладів та меблях. Доточувати проводи можна тільки шляхом
паяння з наступним старанним ізолюванням місць з’єднання.
Пожежна безпека
В будівлях і приміщеннях для ПК, обчислювальних центрах слід
дотримуватись наступних вимог пожежної безпеки.
Сховища інформації, приміщення для зберігання перфокарт,
перфострічок, магнітних стрічок і пакетів магнітних та оптичних дисків повинні
розташовуватися у відособлених приміщеннях, обладнаних негорючими стелажами і
шафами. Зберігати перфокарти, перфострічки і магнітні стрічки на стелажах слід
в металевих касетах.
У машинних залах ПК не дозволяється встановлювати шафи для
зберігання матеріалів і предметів.
Над і під машинними залами ПК не допускається розміщувати
пожежонебезпечні і вибухонебезпечні приміщення і склади.
Ремонтувати блоки ПК безпосередньо в машинних залах не
дозволяється.
У машинних залах ПК допускається мати в небиткій тарі не більше
0,5 л легкозаймистих рідин для дрібного ремонту і технічного обслуговування
машин.
Не дозволяється залишати без нагляду включену в електричну мережу
радіоелектронну апаратуру, використовувану для випробувань і контролю ПК.
Не рідше одного разу на квартал необхідно проводити очищення від
пилу агрегатів і вузлів, кабельних каналів і міжпідлогового простору.
Висновки
У ході виконання магістерської роботи було проаналізовано стан
інформаційного моніторингу на сьогоднішній день, сфери його використання та
його завдання. Його поділяють за сферами застосування, засобами, що
використовуються для збору вихідної інформації, потенційними користувачами,
засобами вимірів, способами поширення інформації, часом реалізації та широтою охоплення.
Проаналізовано та порівняно існуючі системи інформаційного
моніторингу в мережі Інтернет, які є оптимальним рішенням завдання орієнтації в
інформації з Інтернет в даний час є інформаційні мережеві служби нового типу.
Але більшість із них платні та доволі дорогі, а ті, що безкоштовні - не досить
функціональні та усі вони направлені на моніторинг в основному новин та статей.
Проаналізовано та порівняно існуючі технології інтеграції
Інтернет-контенту до яких належать Data Mining, Text Mining, Web Mining. В
основі двох останніх покладена перша. Вони базуються на одних і тих самих
принципах, але можуть використовувати різні методи витягнення потрібної
інформації.
Сформульовано критерії оцінювання систем інформаційного
моніторингу, до яких належать як критерії функціональної частини, так і
критерії оцінювання інтерфейсу.
Спроектовано та розроблено повнофункціональну систему
інформаційного моніторингу середовища ринку праці за обраною технологією, яка
пропонується як вбудовуваний модуль до сайту.
В якості подальшого вдосконалення системи інформаційного
моніторингу представляється можливим розширення її функціоналу в аналітичній
частині, тобто створення більшої кількості графіків та діаграм. Так само
можливе доопрацювання інтерфейсу сайту з метою подальшого підвищення його
інформативності, привабливості та зручності.
Список використаних джерел
1. Berry M.W. Survey of Text Mining. Clustering,
Classification, and Retrieval. - Springer-Verlag. - 2004. - 244 p.
. Brink D., PKI Return on Investment. RSA Security Newsletter,
April 2001, Vol. 2, No. 2.
. Clauset A., Moore C., Newman M. E. G. Hierarchical
structure and the prediction of missing links in networks // Nature. - 2000. -
Vol 453. - pp. 98-101.
. Newman M.E. J. The structure and function of complex
networks // SIAM Review. - 2003. - Vol. 45. - pp. 167-256.
. Persse J.R. "Implementing the Capability Maturity
Model". Wiley Computer Publishing, 2001.
. Наталiя Костенко, Валерiй Iванов. Досвiд контент-аналiзу:
моделi та практики: Монографiя. - К.: Центр вiльної преси, 2003. - 62 с.
. Ахо А. Теория синтаксического анализа, перевода и
компиляции. Т. І. Синтаксический аналіз. / А. Ахо, Дж. Ульман. - М.: Мир, 1978.
- 650 с.
. Дридзе Т.М. Текстовая деятельность в структуре социальной
коммуникации. М., 1984
. Белоногов Г.Г. Компьютерная лингвистика и перспективные
информационные технологии / Г.Г. Белоногов. - М.: Русский мир, 2004. - 248 с.
. Берко А. Ю. Системи електронної контент-комерції: моногр.
/ А. Ю. Берко, В. А. Висоцька, В. В. Пасічник. - Львів: Видавництво Львівської
політехніки, 2009. - 612 с. 2.
. Боркова Т.И. Технология оценки и использования
результатов тестирования: опыт ДВГУ и УНО АПК внедрения образовательного
мониторинга для управления качеством образования / Т.И. Боркова, В.И.Вовна,
И.А.Морев // Развитие системы тестирования в России. Тезисы докладов III
Всероссийской научно-методической конф. (Москва 22-23 ноября 2001 г.):
материалы конф. - М. - 2001. - С.55.
. Брайчевский С.М., Ландэ Д.В. Современные информационные
потоки: актуальная проблематика // Научно-техническая информация: Сер. 1. -
2005. - Вып. 11. - С. 21-33
. Георгіаді Н.ГОсобливості оцінки ефективності
інформаційних систем підприємств / Н.Г. Георгіаді, С.В. Князь, Я.Я. Пушак // Економіка
промисловості. - 2004. - № 1(23). - С. 79-88.
. Гершензон Л. М., Ножов И. М., Панкратов Д. В. Система
извлечения и поиска структурированной информации из больших текстовых массивов
СМИ. Архитектурные и лингвистические особенности // Компьютерная лингвистика и
интеллектуальные технологии: Труды международной конференции «Диалог’2005»
(Звенигород, 1-6 июня, 2005 г.)/ Под ред. И. М. Кобозевой, А. С. Нариньяни, В.
П. Селегея. - М.: Наука.
. Годин В.В. Модульная программа для менеджеров: 17-модул.
прогр. "Упр. развитием орг."/ В.В. Годин, И.К. Корнеев // Гос. ун-т
упр. - М.: ИНФРА-М, 2000. - 269 с.
. Григорьев А. Н., Ландэ Д. В. Адаптивный интерфейс
уточнения запросов к системе контент-мониторинга InfoStream // Компьютерная
лингвистика и интеллектуальные технологи. 2002. - №. - С. 345-348.
. Григорьев А., Ландэ Д. В. Контент-мониторинг сетевых
информационных потоков [Электронный ресурс] / Официальный ежемесячный
www-регистр бизнес-ресурсов Украины и зарубежья - Режим доступа:
http://infostream.com.ua/infostream/publ/cbr/index.shtml - Загол.с экрана.
. Григорьев А.Н. InfoStream. Мониторинг новостей из
Интернет: технология, система, сервис: научно-методическое пособие / Григорьев
А.Н., Ландэ Д.В., Бороденков С.А., Мазуркевич Р.В., Пацьора В.Н. - К., ООО “Старт-98”,
2007. - 40 с.
. Григорьев А.Н., Ландэ Д.В. Система мониторинга новостей
InfoStream - информационное пространство из одних рук // Построение
информационного общества: ресурсы и технологии. Тезисы докладов и
информационные материалы XI международной научно-практической конференции. - К:
УкрИНТЭИ. - 2005. - С. 17-20.
. Додонов А. Г. Виявлення категорій і їх взаємозв’язків у
рамках технології контент-моніторингу / Додонов А. Г., Ланде Д.В. //Вісник
державної служби України. - 2006. - № 4. - С. 45-52 с. 3.
. Додонов А. Г., Ландэ Д. В. Выявление понятий и их
взаимосвязей в рамках технологии контент- мониторинга // Регистрация, хранение
и обработка данных, 2006, Т. 8, № 4. - С. 45-52.
. Ермаков А. Е. Автоматическое извлечение фактов из текстов
досье: опыт установления // Компьютерная лингвистика и интеллектуальные
технологии: Труды международной конференции «Диалог 2007» (Бекасово, 30 мая - 3
июня 2007 г.) / Под ред. Л. Л. Иомдина, Н. И. Лауфер, А. С. Нариньяни, В. П.
Селегея. - М.: Изд- во РГГУ. - 2007. - С. 172-177.
. ЗАКОН УКРАЇНИ Про охорону праці [Електронний ресурс] /
Режим доступу: http://zakon.rada.gov.ua/cgi-bin/laws/main.cgi?nreg=2694-12. -
Назва з екрана.
. Информационные системы: [учеб. пособие / под ред. В.Н.
Волковой, Б.И. Кузина]. - СПб.: Изд-во СПбГПУ. - 2004. - 224 с.
. Исаев Г.Г. Информационные системы в экономике / Г.Г.
Исаев, И.В. Чернышев - Ульяновск: УлГТУ - 2003. - 100 с.
. Каган М. Синергетика и культурология / М.Каган
[электронный ресурс]. - Режим доступa: URL: http://bioinformatix.ru/content/view/412/49.
- Загол. с экрана.
. Квєтний Р. Н. Визначення сенсу текстової інформації на
основі моделі розповсюдження обмежень / Р. Н. Квєтний, О. В. Бісікало, І. О.
Назаров // Вимірювальна та обчислювальна техніка в технологічних процесах. -
2012. - №1. - С. 93-95.
. Кули Ч. Человеческая природа и социальный порядок / Ч.
Кули. - М.: Идея-Пресс, 2001. - 328 с.
. Ланде Д. В. Основи теорії та технології інтеграції
інформаційних потоків в інтернет-просторі: автореф. дис. на здобуття наук,
ступеня докт. техн. наук: спец. 05.13.06 - «автоматизовані системи управління
та прогресивні інформаційні технології» / Д. В. Ланде. - Київ. - 2006. - 20,
[1] с.
. Ландэ Д. В. Програмно-апаратнa система інформаційної
підтримки прийняття рішень: наук.-метод. посіб. / Д. В. Ландэ, В. М.Фурашев, О.
М. Григор’єв. - Київ, 2006. - 48 с. 5.
. Ландэ Д. В. Системы мониторинга Internet-контента. / Д.
В. Ландэ // Бизнес-регистр. - 2002. - №2 (8). - С. 36-39.
. Ландэ Д. В., Григорьев А. Н., Брайчевский С. М.,
Дармохвал А. Т., Снарский А. А. Труды 9-ой Всероссийской научной конференции
«Электронные библиотеки: перспективные методы и технологии, электронные
коллекции» - RCDL- 2007, Переславль-Залесский, Россия. - 2007. - С. 148-150.
. Ландэ Д. В. Интернетика: Навигация в сложных сетях:
модели и алгоритмы / Д. В. Ландэ, А. А. Снарский, И. В. Безсуднов - M.:
Либроком (Editorial URSS). - 2009. - 264 с.
. Ландэ Д.В. Затерянный веб // Журнал "Телеком".
- К., 2005. - № 1-2. - С. 46-51.
. Ландэ Д.В. Поиск знаний в Internet. Профессиональная
работа / Д.В. Ландэ - М.: "Вильямс", 2005. - 272 с.
. Ландэ Д.В., Школа веб-разведки / Д.В. Ландэ, В.В. Прищепа
// Журнал "Телеком". - К., 2007. - № 6. - С. 40-45.
. Леліков Г.І. Моніторинг діяльності органів виконавчої
влади із застосуванням комп ‘ютерної системи контент-аналізу електронних ЗМІ /
Г.І. Леліков, В.М. Сороко, О.М. Григор’єв, Д.В. Ланде //Вісник державної служби
України. - 2002. - № 2. - С. 72-78 с. 6.
. Майоров А. Н. Мониторинг как научно-практический феномен
/ А.Н. Майоров // Школьные технологии. - 1998. - № 5. - С. 25.
. Массон Г. В. Взаимосвязь системы личностных терминальных
ценностей и типов межличностных отношений: Дис.... канд. психол. наук:
19.00.01: Красноярск, 2004. - 146 c. РГБ ОД, 61:05-19/11
. Мейор Т. Методологии оценки ИТ. / Т. Мейор // Директор
ИС. - 2002. - № 9. - 215 с.
. Методика оценки научно-технического уровня АСУ. Типовые
положения (РД 50-492-84) / [под. ред. Т.А. Киселевой]. - М.: Изд-во стандартов,
1985. - 18 с.
. Методические рекомендации по выбору и адаптации
применительно к средствам вычислительной техники и информатики методик расчета
показателей экономической эффективности / Ин-т кибернетики им. В.М. Глушкова. -
К., 1992. - 56 с.
. Мещеряков С. В. Эффективные технологии создания
информационных систем. / C.В. Мещеряков, В.М. Иванов - СПб.: Политехника. -
2005. - 309 с.
. Нога Р. Аналітичний огляд методів та засобів опрацювання
текстової інформації / Р. Нога, Н. Б. Шаховська // Видавництво: Львівська
політехніка. - 2011. - С. 323-332.
. Плэтт В. Информационная работа стратегической разведки /
В. Плэтт- М. - 1958. - 510 с.
. Романюк А. Розпізнавання багатослівних конструкцій. / А.
Романюк, Г. Кваснюк, М. Романишин. // Комп’ютерні системи проектування теорія і
практика. - 2011. - №711. - С. 158-165.
. Савенко О. С. Методи лексичного аналізу технічного
завдання на розробку програмного забезпечення. / О. С. Савенко, Ю. П. Кльоц, В.
С. Шевцов. // Вісник хмельницького національного університету. - 2011. - №5. -
С. 167-171.
. Скрипкин К. Г.. Экономическая эффективность
информационных систем / Скрипкин К. Г. - М.: ДМК Пресс. - 2002. - 256 с.
. Смит П. Коммуникации стратегического маркетинга / П.Смит,
К. Берри. - М.: Юнити-Дана, 2001. - 282 с.
. Снарский А. А., Ландэ Д. В., Женировский М. И. Метод
выявления неявных связей объектов // Труды 11й Всероссийской научной
конференции «Электронные библиотеки: перспективные методы и технологии,
электронные коллекции» - RCDL’2009, Петрозаводск, Россия. - 2009. - C 46-49.
. Сорока М., Танатар Н. Використання методу контент-аналiзу
при створеннi автоматизованих iнформацiйних систем // Наук. пр. НБУВ. - 1998. -
Вып. 1. - С. 318-323.
. Труды международной конференции «Диа- лог’2005»
(Звенигород, 1-6 июня, 2005 г.) / Под ред. И. М. Кобозевой, А. С. Нариньяни, В.
П. Селегея. - М.:Наука - С. 109-111.
. Урсул А. Концепция современного естествознания / А.
Урсул, В. Лось. - М., 2005. - 440 с.
. Федорчук А. Г. Контент-мониторинг информационных потоков
[Электронный ресурс] / Б-ки Нац. акад. наук: пробл. функционирования, тенденции
развития. - К., 2005. - Вып. 3. - Режим доступа:
http://www.nbuv.gov.ua/articles/2005/05fagmip.html. - Загол. с экрана.
. Федорчук А., Танатар Н. Президентськi вибори 1999 року:
контент-аналiз матерiалiв преси // Там само. - С. 351- 354.
. Фостер Дж. Автоматический синтаксический анализ / Фостер
Дж.; пер. с англ. В.В. Мартынюка; под ред. Э.З. Любимского. - М.: Мир, 1975. -
70с.
. Фрост, Р., Хафіз, Р. і Callaghan, P. (2007) «Модульний та
ефективної зверху вниз розбору для неоднозначних лівої рекурсивних граматик».
10-й Міжнародний семінар з Аналіз технологій (IWPT), ACL-SIGPARSE, сторінки:
109 - 120, червень 2007 р. в Празі.
. Фрост, Р., Хафіз, Р. і Callaghan, P. (2008) "Parser
комбінаторів для неоднозначних лівих рекурсивних граматик». Десятий Міжнародний
симпозіум з практичним аспектам декларативних Мови (PADL), ACM-SIGPLAN, Том
4902/2008, сторінок: 167 - 181, січні 2008 року, Сан-Франциско.
. Хантер Р. Основные концепции компиляторов / Робин Хантер;
пер. с англ. - М.: Вильямс, 2002. - 256 с.
. Шибутан ИТ. Социальная психология / И.Т.Шибутан, Ш.
Тамотсу. - М.: Феникс, 1999. - 544с.
. Широков В.А. Корпусна лінгвістика. / В. А. Широков, О. В.
Бугаков, Т. О. Грязнухіна. - К.: Довіра, 2005. - 471с.
. Шишов С.Е. Школа: мониторинг качества образования /
С.Е.Шишов, В.А.Кальней. - М.: Педагогическое общество России, 2000. - 320 с.
Додаток А
Лістинг програми
Головна сторінка (пошук, аналіз,
аналітика запиту)
<?php header('Content-Type:
text/html; charset=windows-1251'); ?>
<?php require_once
'lib/functions.php'; ?>
<html>
<head>
<title>Система інформаційного
моніторингу</title>
<script
type="text/javascript"
src="https://www.google.com/jsapi"></script>
<link rel="stylesheet"
type="text/css" href="style.css" />
</head>
<body>
<table align="center"
width="35%">
<tr>
<td width="15%"><?php
if(!$_REQUEST['act'] or $_REQUEST['act'] == 'work'){echo "<a
href=\"index.php\"><b>Пошук</b></a>";}else
echo "<a href=\"index.php\">Пошук</a>";
?></td>
<td
width="15%"><?php if($_REQUEST['act'] == 'analytics'){echo
"<b><a href=\"analytics.php?act=show\">Аналітика</a></b>";}else
echo "<a
href=\"analytics.php?act=show\">Аналітика</a>";
?></td>
<td></td>
</tr>
</table>
<table align="center"
width="35%">
<form>
<input type="hidden"
name="act" value="work" />
<tr><td
width="85%">
<input type="text"
name="keyword" style="font-family: Tahoma; font-size: 10px;
width: 100%;" />
</td>
<td>
<input type="submit"
name="ok" value="Знайти" />
</td>
</tr>
</form>
</table>
<?php
// Парсинг, запись в базу и
выведение результатов поиска($_REQUEST['act'] == 'work')
{
$keyword = $_REQUEST['keyword'];
$jobsua =
GetUrl("http://www.jobs.ua/vacancy/search/?todo=search&keywords={$_REQUEST['keyword']}&city=0");
// отправка запроса на сайт
$handle=@fopen("jobsua.txt","a");
// запись страницы результатов в файл($handle,$jobsua);($handle);
$jobukrnet =
GetUrl("http://job.ukr.net/vacancy/?ShowSearchResults=1&CityId=0&RegionId=9&Keywords={$_REQUEST['keyword']}");
$handle=@fopen("jobsukr.net.txt","a");($handle,$jobukrnet);($handle);
//$workua = GetUrl("http://www.work.ua/jobs/?search={$_REQUEST['keyword']}&ss=1®ion=39");
$links = GetVacancyArray($jobsua);
// парсинг ссылок на вакансии_connect('localhost','chatlanin_umnik','5447221');
// подключение к базе_select_db('chatlanin_spy');($links as $url) // цикл перебора
каждого файла с вакансией
{
$url =
"http://www.jobs.ua".$url;
$vac_html =
GetUrl($url);_put_contents("cache/".md5($url).".htm",
$vac_html);
$file_name =
"cache/".md5($url).".htm";
$file =
file_get_contents($file_name);
$jobsua_company = GetCompany($file);
// ок
$jobsua_city = GetCity($file); // ок
$jobsua_salary = GetSalary($file);
// ок
$jobsua_sex = GetSex($file); // ок
$jobsua_post = GetPost($file); // ок
$jobsua_age = GetAge($file); // ок
$jobsua_education = GetEducation($file);
// ок
$jobsua_experience =
GetExperience($file); // ок
// ________Запрос в базу на запись
_________
$query = "INSERT into
report(company, city, salary, sex, post, age, education, experience,
search_engine, search_query) values('".mysql_escape_string($jobsua_company)."','"
.$jobsua_city."','"
.$jobsua_salary."','"
.$jobsua_sex."','"
.$jobsua_post."','"
.$jobsua_age."','"
.$jobsua_education."','"
.$jobsua_experience."','jobs.ua','"
.$keyword."');";_query($query);
$query_select = "SELECT * from
report where search_query = '".$keyword."';";
$result =
mysql_query($query_select);
// проверка на существование
результатов поиска
$fail = count($links);
}(!$links)
{"<center>Не знайдено
вакансій!</center>";
} else {
?>
<!--Вывод таблички с
результатом-->
<table align="center"
width="75%">
<tr>
<td>
Пошуковий запит: <b><?php
$row1 = mysql_fetch_array($result); echo $row1['search_query']; ?></b>
</td>
<tr>
</tr>
<td>
Результати з сайту:
<b><?php echo $row1['search_engine']; ?></b>
</td>
<td colspan="6"
align="right">
<a
href="index.php?act=analytics&keyword=<?php echo
$_REQUEST['keyword'];?>"><img src="graf.png" />
Аналітика запиту</a>
<a
href="stats.php?act=download&keyword=<?php echo
$_REQUEST['keyword'];?>" target=_blank><img
src="Excel.gif" /> Завантажити звіт</a>
</td>
</tr>
</table>
<table id="box-table-a"
align="center" width="75%">
<thead>
<tr>
<th
scope="col">Компанія</th>
<th
scope="col">Місто</th>
<th
scope="col">Зарплата</th>
<th
scope="col">Стать</th>
<th
scope="col">Посада</th>
<th scope="col">Вік</th>
<th
scope="col">Освіта</th>
<th
scope="col">Досвід роботи</th>
</tr>
</thead>
<tbody>
<?php ($row =
mysql_fetch_array($result))
{"<tr><td>{$row['company']}</td><td>{$row['city']}</td><td>{$row['salary']}</td><td>{$row['sex']}</td><td>{$row['post']}</td><td>{$row['age']}</td><td>{$row['education']}</td><td>{$row['experience']}</td></tr>";
}
?>
</tbody>
</table>
<?php
}
} // Блок создания и вывода
аналитики по поисковому запросу($_REQUEST['act'] == 'analytics')
{ "<p>
// Блок запросов к базе
$query = "SELECT education,
count(*) FROM report WHERE search_query = '".$_REQUEST['keyword'].
"'GROUP BY education ORDER BY education DESC"; // Круговая диаграмма
по образованию
$query_vacancy = "SELECT date,
search_query, count(*) FROM report WHERE search_query =
'".$_REQUEST['keyword']. "' GROUP BY date ORDER BY date ASC"; //
Столбики по вакансиям
$query_sex = "SELECT sex,
count(*) FROM report WHERE search_query = '".$_REQUEST['keyword']. "'
GROUP BY sex ORDER BY sex DESC"; // Круговая диаграмма по половому
признаку
$query_age = "SELECT age,
count(*) FROM report WHERE search_query = '".$_REQUEST['keyword']. "'
GROUP BY age ORDER BY age DESC";
$query_city_salary = "SELECT
city, AVG(salary) as 'avg' FROM report WHERE search_query =
'".$_REQUEST['keyword']. "' GROUP BY city";
$result = mysql_query($query);
$result_vacancy = mysql_query($query_vacancy);
$result_sex =
mysql_query($query_sex);
$result_age =
mysql_query($query_age);
$result_city_salary =
mysql_query($query_city_salary);
// Блок формирования структурных
массивов с данными для построения графиков
$rs[] = array(iconv('cp1251',
'utf-8', 'Освіта'), iconv('cp1251', 'utf-8', 'Кількість'));($row =
mysql_fetch_assoc($result))
{
$row['education'] = iconv('cp1251',
'utf-8', $row['education']);
$rs[] = array($row['education'],
intval($row['count(*)']));
}"<script
type=\"text/javascript\">var x =
".json_encode($rs).";</script>";
$rs_vacancy[] =
array(iconv('cp1251', 'utf-8', 'Вакансія'), iconv('cp1251', 'utf-8',
$_REQUEST['keyword']));($row_vacancy = mysql_fetch_assoc($result_vacancy))
$row_vacancy['search_query'] =
iconv('cp1251', 'utf-8', $row_vacancy['search_query']);
$rs_vacancy[] =
array(date("d.m.y", strtotime($row_vacancy['date'])),
intval($row_vacancy['count(*)']));
}"<script
type=\"text/javascript\">var y =
".json_encode($rs_vacancy).";</script>";
$rs_sex[] = array(iconv('cp1251',
'utf-8', 'Стать'), iconv('cp1251', 'utf-8', 'Кількість'));($row_sex =
mysql_fetch_assoc($result_sex))
{
$row_sex['sex'] = iconv('cp1251',
'utf-8', $row_sex['sex']);
$rs_sex[] = array($row_sex['sex'],
intval($row_sex['count(*)']));
}"<script
type=\"text/javascript\">var z =
".json_encode($rs_sex).";</script>";
$rs_age[] = array(iconv('cp1251',
'utf-8', 'Вік'), iconv('cp1251', 'utf-8', 'Кількість'));($row_age =
mysql_fetch_assoc($result_age))
{
$row_age['age'] = iconv('cp1251',
'utf-8', $row_age['age']);
$rs_age[] = array($row_age['age'],
intval($row_age['count(*)']));
}"<script
type=\"text/javascript\">var a =
".json_encode($rs_age).";</script>";
$rs_city_salary[] =
array(iconv('cp1251', 'utf-8', 'Місто'), iconv('cp1251', 'utf-8',
'Зарплата'));($row_city_salary = mysql_fetch_assoc($result_city_salary))
{
$row_city_salary['city'] =
iconv('cp1251', 'utf-8', $row_city_salary['city']);
$rs_city_salary[] =
array($row_city_salary['city'], intval($row_city_salary['avg']));
}"<script
type=\"text/javascript\">var b =
".json_encode($rs_city_salary).";</script>";
?>
<!--Формированиие и вывод
графиков-->
<script
type="text/javascript">.load("visualization",
"1",
{packages:["corechart"]});.setOnLoadCallback(drawChart);drawChart() {data
= google.visualization.arrayToDataTable(x);options = {: 'Освіта',D: 'true'
};chart = new
google.visualization.PieChart(document.getElementById('chart_div'));.draw(data,
options);
}
</script>
<script
type="text/javascript">.setOnLoadCallback(drawChart);drawChart()
{data_post = google.visualization.arrayToDataTable(y);
options_post = {: 'Результати
пошукових запитів',: {title: 'Вакансії', titleTextStyle: {fontName: 'Tahoma',
fontSize: 11}},: 'Tahoma',: 12
};chart_post = new
google.visualization.ColumnChart(document.getElementById('chart_post'));_post.draw(data_post,
options_post);
}
</script>
<script
type="text/javascript">.load("visualization",
"1",
{packages:["corechart"]});.setOnLoadCallback(drawChart);drawChart()
{data_sex = google.visualization.arrayToDataTable(z);options_sex = {:
'Стать',D: 'true'
};chart_sex = new
google.visualization.PieChart(document.getElementById('chart_sex'));_sex.draw(data_sex,
options_sex);
}
</script>
<script
type="text/javascript">.load("visualization",
"1", {packages:["corechart"]});.setOnLoadCallback(drawChart);drawChart()
{data = google.visualization.arrayToDataTable(a);options = {: 'Вік',D: 'true'
};chart = new
google.visualization.PieChart(document.getElementById('chart_age'));.draw(data,
options);
}
</script>
<script type="text/javascript">.load("visualization",
"1",
{packages:["corechart"]});.setOnLoadCallback(drawChart);drawChart()
{data = google.visualization.arrayToDataTable(b);options = {: 'Зарплата по
містам',D: 'true'
};chart = new
google.visualization.LineChart(document.getElementById('city_salary'));.draw(data,
options);
}
</script>
<table>
<tr>
<td><div
id="chart_div"></div></td>
<td><div
id="chart_sex"></div><td>
<td><div
id="chart_age"></div><td>
</tr>
<tr>
<td><div
id="chart_post" style="width: auto; height:
500px;"></div></td>
<td><div
id="city_salary" style="width: auto; height:
500px;"></div></td>
</tr>
</table>
<?php
}
?>
</body>
</html>
Генерація звіту
<?php
// Формирование Excel файла со
статистикой
$link = mysql_connect('localhost',
'chatlanin_umnik', '5447221');
//mysql_query("SET NAMES
'cp1251'");
//mysql_query("SET CHARACTER
SET 'cp1251'");_select_db('chatlanin_spy');
$select = "SELECT company as
'Фірма', as 'Місто', as 'Зарплата', as 'Стать', as 'Посада', as 'Вік',as
'Освіта',as 'Досвід роботи',_query as 'Пошукове слово',as 'Дата',_engine as
'Пошукова система' FROM report WHERE search_query =
'".$_REQUEST['keyword']."'";
$export = mysql_query ($select) or
die ("Sql error: ". mysql_error());
$fields = mysql_num_fields
($export);($i = 0; $i < $fields; $i++)
{
$header.= mysql_field_name($export,
$i). "\t";
} ($row = mysql_fetch_row($export))
{
$line = '';($row as $value)
{ //$value = iconv('utf-8',
'windows-1251', $value); ((!isset($value)) || ($value == ""))
{
$value = "\t";
}
{
$value = str_replace('"',
'""', $value);
$value = '"'. $value. '"'.
"\t";
}
$line.= $value;
}
$data.= trim($line). "\n";
}
$data = str_replace("\r",
"", $data);($data == "")
{
$data = "\n(0) Records
Found!\n";
}("Content-type:
application/octet-stream;");("Content-Disposition: attachment;
filename=report.xls");("Pragma: no-cache");("Expires:
0");"$header\n$data";
Сторінка загальної аналітики
<?php header('Content-Type:
text/html; charset=windows-1251'); ?>
<html>
<head>
<title>Система інформаційного
моніторингу</title>
<script
type="text/javascript"
src="https://www.google.com/jsapi"></script>
<link rel="stylesheet"
type="text/css" href="style.css" />
</head>
<body>
<table align="center"
width="35%">
<tr>
<td width="15%"><?php
if(!$_REQUEST['act'] or $_REQUEST['act'] == 'work'){echo "<a
href=\"index.php\"><b>Пошук</b></a>";}else
echo "<a href=\"index.php\">Пошук</a>"; ?></td>
<td
width="15%"><?php if($_REQUEST['act'] == 'show'){echo
"<b><a href=\"index.php?act=analytics\">Аналітика</a></b>";}else
echo "<a
href=\"index.php?act=analytics\">Аналітика</a>";
?></td>
<td></td>
</tr>
</table>
<table align="center"
width="35%">
<form>
<input type="hidden"
name="act" value="work" />
<tr><td
width="85%">
<input type="text"
name="keyword" style="font-family: Tahoma; font-size: 10px;
width: 100%;" />
</td>
<td>
<input type="submit"
name="ok" value="Знайти" />
</td>
</tr>
</form>
</table>
<?php
// Блок формирования общей аналитики
($_REQUEST['act'] == 'show')
{
"<center><h3>Загальна аналітика
системи</h3></center>";_connect('localhost',
'chatlanin_umnik', '5447221');_select_db('chatlanin_spy');
// Блок запросов к базе
$query = "SELECT education,
count(*) FROM report GROUP BY education ORDER BY education DESC"; //
Круговая диаграмма по образованию
$query_vacancy = "SELECT
search_query, count(*) FROM report GROUP BY search_query ORDER BY search_query
DESC"; // Столбики по вакансиям
$result = mysql_query($query);
$result_vacancy =
mysql_query($query_vacancy);
// Блок формирования структурных
массивов с данными для построения графиков
$rs[] = array(iconv('cp1251',
'utf-8', 'Освіта'), iconv('cp1251', 'utf-8', 'Кількість'));($row =
mysql_fetch_assoc($result))
{
$row['education'] = iconv('cp1251',
'utf-8', $row['education']);
$rs[] = array($row['education'],
intval($row['count(*)']));
}"<script
type=\"text/javascript\">var x =
".json_encode($rs).";</script>";
$rs_vacancy[] =
array(iconv('cp1251', 'utf-8', 'Вакансія'), iconv('cp1251', 'utf-8',
'Кількість'));($row_vacancy = mysql_fetch_assoc($result_vacancy))
{
$row_vacancy['search_query'] =
iconv('cp1251', 'utf-8', $row_vacancy['search_query']);
$rs_vacancy[] =
array($row_vacancy['search_query'], intval($row_vacancy['count(*)']));
}"<script
type=\"text/javascript\">var y =
".json_encode($rs_vacancy).";</script>";
?>
<!--Формированиие и вывод
графиков-->
<script
type="text/javascript">.load("visualization",
"1",
{packages:["corechart"]});.setOnLoadCallback(drawChart);drawChart()
{data = google.visualization.arrayToDataTable(x);options = {: 'Освіта',D:
'true'
};chart = new
google.visualization.PieChart(document.getElementById('chart_div'));.draw(data,
options);
}
</script>
<script
type="text/javascript">.setOnLoadCallback(drawChart);drawChart()
{data_post = google.visualization.arrayToDataTable(y);options_post = {:
'Пошукові запити',: {title: 'Вакансії', titleTextStyle: {fontName: 'Tahoma',
fontSize: 11}},: 'Tahoma',: 12
};chart_post = new
google.visualization.BarChart(document.getElementById('chart_post'));_post.draw(data_post,
options_post);
}
</script>
<table width="70%">
<tr>
<td><div
id="chart_div" style="width: 500px; height:
300px;"></div></td>
<td></td>
</tr>
<tr>
<td
colspan="2"><center><div id="chart_post"
style="width: auto; height: 500px;"></div></center></td>
</tr>
</table>
<?php
}
?>
</body>
</html>
Бібліотека регулярних виразів
<?phpGetUrl($url) // отправка
запроса на поисковый сайт и сохранение страницы результатов
{
$curl =
curl_init($url);_setopt($curl, CURLOPT_HEADER, 0); // потому что HTTP-header в
ответе тебе не нужен_setopt($curl, CURLOPT_RETURNTRANSFER, 1); // потому что
надо результат в переменную, а не на вывод_setopt($curl, CURLOPT_TIMEOUT, 10);
$result_page =
curl_exec($curl);_close($curl);$result_page;
}get_matches($text, $regex, $index =
null) // поиск совпадений
{
$matches = array();
$cnt = preg_match_all($regex, $text,
$matches);(is_null($index))$matches;$matches[$index];
}GetVacancyArray($html) // поиск
ссылок на вакансии
{get_matches($html,
'/<a\s*?href="([0-9a-z\/]*?)"\s*?class="def_bl_vac".*?>([^<>]*?)<\/a>/ims',
1);
}GetCompany($text) // поиск
компании-работодателя
{
$matches = array();
$pattern =
'/viewcontcenter.*?<li>(.*?)<\/li>/ims';
$result = preg_match($pattern,
$text, $matches);
$matches[1] = strip_tags($matches[1]);$matches[1];
}GetCity($text) // поиск города
{
$matches = array();
$pattern =
'/viewcontcenter.*?<li>.*?<\/li>.*?<li>(.*?)<\/li>/ims';
$result = preg_match($pattern,
$text, $matches);
$matches[1] =
strip_tags($matches[1]);$matches[1];
}GetSalary($text) // поиск зарплаты,
приведение зарплат и валют к общему формату
{
$matches = array();
$pattern =
'/viewcontcenter.*?<li>.*?<\/li>.*?<li>.*?<\/li>.*?<li>(.*?)<\/li>/ims';
$result = preg_match($pattern,
$text, $matches);
$matches[1] =
strip_tags($matches[1]);
$pattern_currency =
'/(\D*?)(\d*?)(\D+)/';
$result =
preg_match($pattern_currency, $matches[1],$matches_currency);
$matches_currency[3] =
trim($matches_currency[3]);($matches_currency[3]){'грн': return
$matches_currency[2] * 1;'$': return $matches_currency[2] * 8;'€': return
$matches_currency[2] * 11;: return $matches_currency[3];
}$matches_currency[1].';
'.$matches_currency[2].';lolol '.$matches_currency[3];
}GetExperience($text) // поиск опыта
работы
{
$matches = array();
$pattern = '/viewcontcenter.*?<li>.*?<\/li>\s*<li>.*?<\/li>\s*<li>.*?<\/li>\s*<li>.*?<\/li>\s*<li>.*?<\/li>\s*<li>.*?<\/li>\s*<li>.*?<\/li>\s*<li>(.*?)<\/li>/ims';
$result = preg_match($pattern,
$text, $matches);
$res = $matches[1];
//$res =
preg_replace('/[^0-9,;\+]/i', '', $res);
$res = trim($res);$res;
}GetSex($text) // поиск пола
{
$matches = array();
$pattern =
'/viewcontcenter.*?<li>.*?<\/li>\s*<li>.*?<\/li>\s*<li>.*?<\/li>\s*<li>(.*?)<\/li>/ims';
//$pattern =
'/viewcontcenter.*?<li>.*?</li><li>.*?</li><li><a.*?</a></li><li>(.*?)</li><li>опыт
работы 1-2 года</li><li>полная занятость</li><li>2900
грн</li><li>Аналітик продаж,економіст</li></ul><div>
$result = preg_match($pattern,
$text, $matches);
$matches[1] =
strip_tags($matches[1]);
$matches[1] = trim($matches[1]);$matches[1];
}GetAge($text) // поиск возраста
{
$matches = array();
//$pattern =
'/viewcontcenter.*?<li>.*?<\/li>\s*<li>.*?<\/li>\s*<li>.*?<\/li>\s*<li>(.*?)<\/li>/ims';
$pattern =
'/viewcontcenter.*?<li>.*?<\/li>\s*<li>.*?<\/li>\s*<li>.*?<\/li>\s*<li>.*?<\/li>\s*<li>\D*?(\d+)?\D*?(\d+)?\D+<\/li>/ims';
$result = preg_match($pattern,
$text, $matches);$matches[1];
}GetEducation($text) // поиск
образования
{
$matches = array();
//$pattern =
'/viewcontcenter.*?<li>.*?<\/li>\s*<li>.*?<\/li>\s*<li>.*?<\/li>\s*<li>(.*?)<\/li>/ims';
$pattern =
'/viewcontcenter.*?<li>.*?<\/li>\s*<li>.*?<\/li>\s*<li>.*?<\/li>\s*<li>.*?<\/li>\s*<li>.*?<\/li>\s*<li>.*?<\/li>\s*<li>(.*?)<\/li>/ims';
$result = preg_match($pattern,
$text, $matches);
$matches[1] = trim($matches[1]);$matches[1];
}GetPost($text) // поиск должности
{
$matches = array();
$pattern =
'/viewcontcenter.*?<li>.*?<\/li>\s*<li>.*?<\/li>\s*<li>.*?<\/li>\s*<li>.*?<\/li>\s*<li>.*?<\/li>\s*<li>.*?<\/li>\s*<li>.*?<\/li>\s*<li>.*?<\/li>\s*<li>(.*?)<\/li>/ims';
$result = preg_match($pattern,
$text, $matches);
$matches[1] =
strip_tags($matches[1]);$matches[1];
}ScreenSQL($sql) // экранирование
кавычек (защита от атак)
{str_replace("'",
"''", $sql);
}
?>