Project

General

Profile

Автоматический импорт новостей с использованием python-скриптов

Начиная с версии 2.17.2.180 и выше

Агент МБД-Импорт имеет возможность импорта новостей с использованием python-скриптов в DB_Import как препроцессинг.

Требуется обязательное наличие на компьютере установленного Python, установить можно из MicrosoftStore или с https://www.python.org/, предпочтений по версиям нет, но лучше 3-й.

В DB_Import были добавлены следующие настройки:

  • в "Базовые установки" диалога "Настройки" (Меню "Сервис"->"Настройки") добавлено поле "Пусть к приложению Python" - нужно указать пусть к установленному в системе Python. Если не задан, то путь берется из переменных окружения системы. 

pythonpath.jpg

В настройках источника (диалог "Source folder") при добавлении нового каталога добавлено:

  • поле PythonPreprocessor - полный пусть к файлу скрипта
  • кнопка [...] выбора файла скрипта
  • Кнопка "Test" - для тестирования скриптов

RNewsSource.jpg

ВАЖНО: Для процессинга создаются временные файлы в кодировке utf-8, с заголовком или без оного, файлы в другой кодировке процесситься не будут. Это касается и тестирования скриптов по кнопке "Test". 

Цель скрипта - прочитать переданный файл новости, выделить название, комментарии и тело новости, создать JSON и записать в файл под тем же именем в кодировке utf-8,

т.е. должен получиться фай с содержимым типа :

{
"name": "<message name>\n<second line name>",
"subject": "some subject or comment\nsecond comment",
"comment": "another comment",
"body": "string 1\nstring 2\n\nstring4"
}
где обязательные поля: "name", "body", "comment" или "subject". Во вложении скрипты написанные нашими разработчиками. Можете использовать их, либо переделать под ваши нужды.

Для каждого новостного агентства можно завести соответствующие источники, т.е. "ADD FOLDER" и с соответствующими скриптами Python. Элементы добавляются в базу данных в категории соответствующего источника, либо в какую-то общую.

Во вложении python-скрипты, созданные под нужны ВГТРК Москва. Каждый из скриптов создавался под соответствующие информационное агентство:
для скрипта interfax.py и tass.py "Простой текст (TXT)", "Кириллица (DOS)"
для rian.py - "Простой текст (TXT)", "Кириллица (Windows)".

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

В соответствии с этим и для Ленты Новостей были добавлены/изменены опции "Список элементов":

  • Показать название  - в ленте показывается название элемента, одной строкой
  • Показать начало текста  - в ленте показывается начало текста элемента, не больше двух строк (количество строк зависит от размера текста и наличия в нем символов перевода строк)  
  • Показать комментарий (2 строки) - в ленте показывается комментарий, не больше двух строк.

Можно выбрать любое сочетание для отображения. Если ничего не выбрано, показывается название.

Add picture from clipboard (Maximum size: 742 MB)