Парсер — программа для сбора информации. Программа для сбора клинико-статистических данных о пациентах "медстатистика" Обзор бесплатных программ для сбора информации о компьютере

Краткая предыстория

Придя на родной завод инженером в группу АСОДУ, на меня одной из задач легла обязанность сопровождать механизм сбора данных с различных видов регистрирующих устройств. Замечу, что на заводе неплохой «зоопарк» такого рода оборудования. Как известно, для регистрирующих устройств, всегда идёт специализированное программное обеспечение, которое позволяет осуществить его конфигурирование и опрос. Но далеко не со всеми видами приборов идёт программное обеспечение, с помощью которого можно получить данные с прибора и поместить их в общую среду для дальнейшей обработки и архивирования. Так вот такая проблема была решена ещё до меня, путём написания одной программы, которая бы опрашивала все приборы, имеющиеся в наличие, и выгружающая собранные данные в единую базу данных. Но проблема заключалась в том, что при появлении нового типа прибора постоянно приходилось перекомпилировать данную программу, кроме этого она жёстко привязана с конкретной СУБД. Не имея под рукой ни конфигуратора, ни какого-либо тестера, всё это приводило процесс сопровождения в сплошные муки. Вот тогда и появилась идея реализовать некую систему, которая максимально бы упрощала работу по сопровождению механизма сбора данных. Для такой системы мной были выдвинуты следующие требования:
  1. Опрашивать любой тип/вид прибора. Достигаться это должно путём расширения программы за счёт модулей.
  2. Выгружать данные как угодно, сколь угодно и когда угодно. Достигаться такой подход тоже должен за счёт модулей.
  3. Наличие инструмента, позволяющего как можно проще настроить весь процесс опроса.
  4. Наличие инструмента позволяющего протестировать и отладить как модули опроса, так и модули выгрузки данных.
  5. Задача опроса должна работать как служба, но при этом возможность визуального наблюдения за ходом выполнения опроса и выгрузки данных тоже должна присутствовать.

Инструментальные средства

Для реализации своей затеи я использовал следующие инструментальные средства:
Компиляторы: gcc-3.4.2, gcc-4.6.1 и tinyc-0.9.25
Графическая библиотека: wxWidgets-1.8.10 + wxFormBuilder-3.2
База данных: SQLite-3.7.6.2

Реализация

В реализации я кратко расскажу только об основной части программы – сбора данных. Остальные части программного комплекса, на мой взгляд, по своей реализации не столь интересны как эта.
Буфер обмена
Самой главной для меня задачей являлось хранение данных в системе. Реализованный мной буфер принял следующий вид:

Каждый поток опроса имеет доступ к своей ветке буфера, с которой он берёт все стартовые (инициализирующие) настройки, пишет своё состояние и заносит полученные данные. Поток выгрузки данных имеет доступ, как к ветке опроса (с доступом только на чтение), так и к своей ветке экспорта. Доступ к объектам, помеченных на рисунке красным цветом, синхронизируется с помощью критических секций.

Ядро
Ядро программы представлено на рисунке ниже. Оно работает следующим образом. При чтении конфигурационного файла, загрузчиком, формируется конечный буфер (см. рисунок выше), список загруженных плагинов опроса, и список плагинов выгрузки данных. Ядру передаётся как сформированный буфер, так и списки плагинов. Ядро в свою очередь инициализирует на каждый com-порт поток, при этом, передаёт ему ветку буфера и список плагинов устройств. Как только потоки опроса все созданы, ядро начинает инициализировать по такой же схеме и потоки экспорта данных. Но, кроме перечисленного ранее, передаёт каждому константную ссылку на ветку опроса. Таким образом, потоки экспорта могут в любой момент получить всю информацию, как о ходе выполнения процесса опроса, так и получить конечные результаты опроса.

Так как имеется два вида программ опроса (в виде службы и в виде пользовательского графического приложения), то ядро помещается в динамическую библиотеку, которую используют оба приложения.

Все порождённые ядром потоки, кроме всего прочего, получают константную ссылку на само ядро. Таким образом, каждый из потоков может контролировать состояние ядра (RUN, STOP). В том случае если ядро переходит в режим STOP, то все потоки начинают автоматически завершать свою работу. При переходе в режим RUN, ядро заново создаёт вышеописанные потоки.

Интерфейс плагина опроса устройств
Для того, чтобы опросить прибор необходимо иметь две функции: функцию, которая формирует конечный пакет, отправляемый прибору, и функцию обрабатывающую полученный ответ от прибора. Таким образом, интерфейс плагина состоит из двух функций формирования и обработки пакета и ещё одной функции, которая возвращает информацию о нём. Данная информация, нужна как пользователю, так и программе, в связи с тем, что в её содержимом имеется информация о длине формируемого и отправляемого пакетов. В результате имеем следующие функции:
  • GetInfo – информация о плагине;
  • GetPackage – формирование пакета;
  • GetData – обработка полученного пакета.
Структуры, которыми оперируют эти функции, я думаю описывать излишне, ибо моей целью стоит описать общий принцип работы системы. Но кому стало интересно, может заглянуть в .
Интерфейс плагина экспорта
Интерфейс плагина экспорта состоит из четырёх функций:
  • About – информация о плагине;
  • Begin – функция выполняется единожды, после того как ядро переходит в режим RUN. Она ориентирована на то, чтобы осуществить какое-либо подключение к хранилищу данных. Если функция вернёт ошибку, то поток пишет ошибку в буфер и завершает свою работу.
  • Export – непосредственно экспорт данных;
  • End – функция выполняется единожды, после того как ядро переходит в режим STOP. Выполняется только в том случае, если функция Begin не вернула какую-либо ошибку. Функция ориентирована на то, чтобы осуществить отключение от хранилища данных.
Структуры, которыми оперируют эти функции, я также не буду описывать по причине указанной выше.

Результат

На данный момент в комплекс входит следующее программное обеспечение:
  • Editor – редактор конфигураций опроса;
  • ReaderGUI – программа опроса в виде пользовательского приложения;
  • ReaderSvc – программа опроса в виде службы Windows;
  • ReaderSvcCtrl – управление службой опроса;
  • TestExport – тестирование плагинов экспорта;
  • TestRequest – тестирование плагинов опроса.
Комплекс ориентирован на ОС Windows, хотя жёсткая привязка к WinAPI имеется только в классе, который осуществляет работу с COM-портом. Ну и естественно служба опроса устройств. Всё остальное же базируется на классах и функциях библиотеки wxWidgets.
Пример работы
Предположим, что имеется два прибора типа «rmt-59 » и «ecograph-t» . Каждый из них подключен на отдельный порт к преобразователю интерфеса «RS-485 – Ethernet». На компьютере, который осуществляет опрос, стоит драйвер преобразующий «Ethernet – RS232». Таким образом, мы имеем два com-порта (к примеру com-10 и com-11), на котором располагается по одному прибору. У обоих приборов, предположим, адрес 1. Оба прибора настроены на скорость передачи данных на 19200 бит/с.

Для начала нужно удостовериться, что имеющиеся плагины подходят для работы с данными приборами. Для этого запускаем программу TestRequest и пытаемся опросить эти приборы

После этого, следует создать конфигурацию опроса. Запускаем программу Editor и настраиваем опрос.

Если Вы создали новую базу, то необходимо прописать путь к ней в файле Reader.ini. Для теста работы опроса запускаем программу ReaderGUI

Теперь, нужно позаботиться об экспорте данных. Специализированных плагинов я не создавал. Для теста работы экспорта в комплект входит один тестовый плагин, который экспортирует данные в текстовый файл. Для начала следует проверить его работу с помощью программы TestExport.

Теперь, когда мы удостоверились в верной работе плагина, можно добавить его в конфигурацию опроса.

Всё, конфигурирование и тестирование закончено. Теперь можно установить и запустить службу. Управление сервисом осуществляем при помощи программы ReaderSvcCtrl.

Послесловие

Конечно, я бы мог написать гораздо больше, но дабы не утомлять читателя, я не стану этого делать. Вот ссылка на мой проект. На все ваши вопросы я с удовольствием отвечу в комментариях.

Многие недостатки системы выяснились уже при эксплуатации. К таким недостаткам можно отнести следующее:

  1. Отсутствие типа опрашиваемого канала. Необходимость типа обуславливается тем, что многие приборы, для разных типов значений (аналоговый канал, математический канал, интегральное значение), требуют особо сформированный запрос.
  2. Отсутствие понятия множителя. Т.е. некоторые приборы при опросе, передают значение в виде целого числа. А позиция запятой в числе, у таких приборов, опрашивается отдельно. И имея такой множитель, пользователь мог бы изменять позицию запятой. К примеру, если по заданному каналу разделитель между целым и дробным значением ставится после первого числа, то множитель 0.1 позволял бы привести число в надлежащий вид. И получив значение 123, система, умножив это число на соответствующий множитель, выдавала бы результат 12.3.

Теги: Добавить метки

Этап сбора данных является одним из ключевых, когда речь идет о проведении клинического исследования. Правильно собранные, надлежащим образом оформленные сведения о пациентах позволяют значительно облегчить последующую статистическую обработку. В идеальной базе данных каждый учетный признак представлен в виде переменной, имеющей корректный формат, что обеспечивает легкость переноса данных в специальные статистические программы, такие как IBM SPSS или STATISTICA.

Многочисленные требования, предъявляемые к организации базы данных, соблюдение которых необходимо для обеспечения принципиальной возможности ее последующей статистической обработки, изложены нами в виде следующих рекомендаций .

Отдельные сложности при создании базы возникают, когда ввод осуществляется с нескольких рабочих мест. Например, исследователь просит помочь с вводом данных своих коллег - врачей или медицинских сестер. При этом вносимые с разных мест сведения должны образовывать единую базу, формируя в итоге общую таблицу. В свою очередь, исследователь в любой момент времени имеет возможность выгрузить актуальную базу данных.

Для того, чтобы хоть немного облегчить и без того полную забот жизнь соискателя, по техническому заданию редакции Интернет-портала сайт профессиональной командой программистов была разработана специальная программа под названием "Медстатистика", позволяющая осуществлять сбор клинических данных в соответствии с протоколом исследования.

Программа по сбору данных "Медстатистика" обеспечивает решение следующих задач:


  • Создание и редактирование базы данных с любого устройства (компьютера, планшета, смартфона), подключенного к интернету
  • Обеспечение совместимости базы данных с наиболее распространенными статистическими программами IBM SPSS и STATISTICA
  • Быстрый ввод данных благодаря наличию выпадающих списков и чекбоксов
  • Выгрузка базы в любой момент времени в формате.xls (для работы в Microsoft Excel)
  • Поддержка режима параллельного ввода , когда данные в базу вносятся одновременно с нескольких рабочих мест
  • Автоматизированное формирование из базы первичной документации - индивидуальных регистрационных карт, содержащих все ранее внесенные в базу сведения о конкретном пациенте, в формате.doc или.xls для распечатки и представления в диссертационный совет

Важным свойством программы "Медстатистика" является защита персональных данных , обеспечиваемая настройкой прав доступа к базе.

Программу отличает простой, интуитивно понятный интерфейс с минимумом пользовательских настроек.

Как приобрести и установить программу "Медстатистика" для сбора клинических данных:

  • Программа "Медстатистика" является облачным сервисом, принадлежащим редакции Интернет-портала сайт и предоставляется пользователям в бессрочную аренду . Прекращение доступа к программе и физическое удаление базы данных с сервера возможно только в случае завершения исследования при наличии письменного согласия пользователя.

  • Стоимость бессрочной аренды программы "Медстатистика" составляет 15 000 рублей за реализацию одной формы сбора данных объемом до 30 показателей. Цена реализации каждого показателя сверх указанного объема составляет 200 рублей . Реализация дополнительных форм для сбора данных выполняется с 50% скидкой .

  • Мы работаем без предоплаты , поэтому расчет происходит только после успешного запуска программы на устройствах заказчика.

  • В стоимость аренды входит бессрочный доступ исследователя и определенных им лиц к базе данных с возможностью ее пополнения и редактирования, техническое сопровождение программы "Медстатистика" в течение всего периода эксплуатации, настройка форм для ввода данных, обучение работе с программой.

  • При установке и настройке программы мы готовы бесплатно проконсультировать заказчика по вопросам, касающимся организации исследования и последующей статистической обработки данных.

  • В случае создания базы данных в программе "Медстатистика" исследователю предоставляется 10% скидка на статистический анализ.

Если предложенные нами условия Вас устраивают и Вы хотите подробнее обсудить программу для сбора данных "Медстатистика", пожалуйста, звоните нам по телефону:

Парсеры — это программы или скрипты, осуществляющие сбор различного контента с других сайтов. В зависимости от требований могут быть настроены на полное или частичное копирование контента выбранного сайта. Разделяются на узкоспецилизированные (копируют текст или изображения) и универсальные (копируют текст и картинки вместе). В основном используются для парсинга контента сайтов и результатов выдачи поисковых систем. Парсеры сайтов помогают вебмастеру собирать контент, анализировать его и наполнять им свои проекты.

Популярные парсеры сайтов

Парсер «Ночной дозор»

— программа для быстрого получения целевой информации с любых сайтов и последующей ее публикацией на других ресурсах. Представляет собой универсальный парсер контента со встроенным синонимайзером, что позволяет получать награбленный контент уже уникальным. В настройках парсера можно задать любые параметры для сбора информации.

Парсинг происходит посредством составления макросов, после чего программа в автоматическом режиме выполняет запрограмированные действия без вашего участия и присмотра. Это позволяет использовать программу в любое удобное время суток на полном автомате. Поддерживает все популярные CMS: WordPress, Joomla, DLE, Drupal, Ucoz а также самописные. Работает в фоновом режиме или по расписанию.

На данное время программа вне конкуренции от других, одно из главных отличий этого парсера, не требует от пользователя знаний программирования. Русский интерфейс, видео уроки по работе, делают программу доступной любому пользователю. СКАЧАТЬ

— бесплатный граббер текста под любые нужды и цели. Шустрый, многопоточный граббер собирает также ссылки со страниц сайтов. Работать легко и удобно. В поле «сайт» вставляете нужный URL со слешем на конце «/». Выставляете нужное количество потоков, редактируете «Black list» потом жмем на старт. На выходе в папке «up»получите текстовый файл с адресами. Чтобы начать парсинг текста, ставим галочку на «селективный парсинг», потом жмем «SelectiveParse». Заполняем поля с настройками, запускаем парсинг. Подробнее по настройке, а также скачать можно .

— популярный в среде вебмастеров, универсальный парсер контента. Умеет спарсить как определенную часть контента сайта или полностью весь сайт. Способен разделять информацию и обрабатывать ее в соответствии с поставленной задачей.

Возможности Sjs:

  • Полный граббинг сайта
  • Частичный граббинг
  • Парсинг по меткам
  • Парсинг URL по шаблону
  • Работа с фильтром
  • Граббит статьи с форматированием и изображениями
  • Очищает текст от мусора и ненужных символов
  • Удаляет ненужные мета-теги
  • Настройка парсинга из файла
  • Установка глубины парсинга
  • Сохранение результатов в форматах TXT, CSV, WPT, Zebrum lite и др.

Граббер очень легко настроить под свои потребности или нужды. Например для наполнения интернет-магазина или каталогов. К сожалению автор свой проект больше не поддерживает. Но скачать парсер Sjs в сети можно без проблем.

Сайтов помогают вебмастеру без особого труда собрать нужную информацию за минимум времени

Сегодня представить технический анализ сайта без парсера невозможно. Эта программа помогает выявить большинство технических ошибок, найти битые ссылки, неисправные редиректы, уровень вложенности и многое другое.

Парсеров много. Они разнятся своим функционалом, удобностью и, конечно же, ценой. Рассмотрим несколько ярких представителей среди этих программ и оценим их функционал, удобность и время работы.

Для оценки функционала возьмём перечень функций, которые обязательно должен иметь «идеальный» парсер:

  • Поиск битых ссылок.
  • Указание входящих и исходящих ссылок страницы.
  • Указание типа и цепочки редиректов.
  • Возможность фильтровать страницы:
    • — использовать регулярные выражения;
    • — сканировать по правилам robots.txt, meta robots, canonical и т. д.
  • Парсинг отдельных URL.
  • Выявление дублей Title, Description и заголовков H.
  • Указание уровня вложенности.
  • Указание заголовков H и их количества.
  • Код ответа сервера.
  • Возможность смены User Agent.
  • Title и его длина.
  • Description и его длина.
  • Keywords и его длина.
  • Canonical.
  • Meta robots.
  • Alt и его длина.
  • Тип контента.

Итак, у нас есть 17 основных требований. Отдельно будем считать дополнительный функционал, удобство и скорость работы.

Удобство, конечно, показатель субъективный. По 5-балльной шкале буду оценивать, насколько мне было удобно и просто работать с программой.

Скорость работы будет показана на примере сайта, размер которого – около 6 тыс. страниц, а к индексации разрешено около 1500 (стоит отметить, что у сайта открыты к индексации скрипты, поэтому он может парсить и их). Для каждого инструмента будут одинаковые условия парсинга.

Screaming Frog SEO Spider 9.2

Каждый из представленных парсеров по-своему хорош. Некоторые не сильно отличаются друг от друга, другие более узконаправленные. Однозначно сказать, какой из парсеров самый лучший – нельзя, но распределить их можно.

Среди платных инструментов конкурируют Netpeak Spider и Screaming Frog SEO Spider. У этих парсеров большой функционал, который в полной мере покрывает все потребности, но стоит отметить, что их цена далеко не маленькая.

ComparseR имеет не меньший функционал и вполне отлично справляется с техническим анализом сайта. С его помощью можно узнать, какие страницы в индексе, что тоже немаловажно. Цена парсера – всего 2 тыс. рублей.
Среди бесплатных парсеров однозначно лидирует Majento SiteAnalayzer. Его функционала достаточно для анализа сайта, единственный и главный минус – длительное время парсинга.

Подписаться на рассылку

Как правило мобильные терминалы продаются без какого-либо прикладного ПО, позволяющего распознавать штрихкоды товаров, накапливать их, сравнивать с накладной и выгружать на ПК. Для использования терминала в полезной деятельности Клеверенс Софт предлагает специальную версию клиента Mobile SMARTS для ТСД и простую программу для обмена данными с ТСД для ПК. Программа конвертирует обычные файлы Excel или CSV в формат, понятный программе терминала, и обратно.

Универсальная программа предназначена в первую очередь для не-1С систем учета. Для «1С:Предприятия» Клеверенс Софт предлагает отдельные комплекты программ под названием драйвера терминалов сбора данных.

Программа для ТСД позволяет создавать документы, сканировать штрихкоды, просматривать списки значений и вводить множество различных данных. Программа для ПК, поставляемая с прикладным ПО, позволяет в один клик конвертировать данные с ТСД в файл Excel нужного формата. Данные по инвентаризации, внутреннему контролю, учету и т.д. могут быть легко собраны, сконвертированы в Excel и отправлены руководителю по электронной почте. Реальные сферы применения включают в себя:

  • проведение быстрой инвентаризации товарных остатков;
  • сбор заказов на поставку в магазинах и точках продаж;
  • контроль доставки товара;
  • контроль транспортных средств: выдача нарядов, пропускной контроль, контроль исполнения;
  • пропускной контроль на воротах и у проходных;
  • сбор данных об отгрузках;
  • штрихкодированный учет на небольшом складе;
  • штрихкодированный учет на складе адресного хранения;
  • сбор заказов на простом или адресном складе;
  • инвентаризация имущества;
  • библиотечный контроль;
  • и многое другое.

Благодаря использованию платформы Mobile SMARTS, в программу входит средство разработки, которое позволяет изменять логику обработки документов и пользовательский интерфейс ТСД.

Вместе с программой к терминалу идут следующие конфигурации:

  • Сбор штрихкодов: позволяет просто сканировать товары поштучно или с вводом количества;
  • Простой склад: приемка, отгрузка, возврат и инвентаризация без учета ячеек или мест хранения и без возможности использовать вложенные контейнеры, промаркированные штрихкодом (паллеты, лотки, коробки с уникальным номером);
  • Склад адресного хранения: приемка, отгрузка, возврат и инвентаризация с учетом ячеек или мест хранения, но без возможности использовать вложенные контейнеры, промаркированные штрихкодом (паллеты, лотки, коробки с уникальным номером). Для каждого товара терминал запрашивает место хранения;
  • Контейнерный склад адресного хранения: приемка, отгрузка, возврат и инвентаризация с учетом ячеек или мест хранения и возможностью использовать вложенные контейнеры, промаркированные штрихкодом (паллеты, лотки, коробки с уникальным номером). Для каждого товара терминал запрашивает место хранения и номер контейнера, позволяет просматривать раскладку по контейнерам.

Демонстрационная версия полнофункциональна и позволяет использовать справочники и документы любого размера, за тем исключением, что при обмене данными из документов копируются только первые три строки.