Задать вопрос
@fractori
Нерд

Как извлечь текст из bitrix24 с помощью Python?

Доброго времени суток!
Суть вопроса заключается в том, что бы выводить в текстовый документ адреса Сделок, в теле которой (в блоке "Комментарий") упоминается строка, допустим "Изготовить оригинальное клише".

Алгоритм в моем представлении выглядит так:

Собственно Сделки в битриксе идут линейно (в строке адреса меняется только порядковый номер, который идет последовательно).
В программе меняется только 2 значения в двух строках с адресами. Это номера сделок.
Допустим от 12000 до 12700 - поиск происходит в этом диапазоне.

Если при открытии страницы со сделкой, и последующему поиску, выполняется условие "Изготовить оригинальное клише", то адрес этой страницы сохраняется в блокноте. Далее цикл повторяется до тех пор, пока не дойдет до 12700.

spoiler
P.S: я сдался на первой строчке "webbrowser.open ( )"
  • Вопрос задан
  • 2381 просмотр
Подписаться 1 Средний Комментировать
Пригласить эксперта
Ответы на вопрос 2
@leshchenko
1. Создаете вебхук в Битрикс24 : Приложения -> Ещё -> Вебхуки

2. Используете пакет fast_bitrix24 для доступа к Битрикс24 REST API.

pip install fast_bitrix24

3. Пишете на Питоне:

from fast_bitrix24 import Bitrix
b = Bitrix('адрес вашего вебхука')
deals = b.get_all('crm.deal.list')
comments = b.get_by_ID('crm.deal.comment.items.get', 
    [d['ID'] for d in deals])


Получаете кортеж, где каждый элемент имеет вид

(ID сделки, [{свойства комментария 1}, {свойства комментария 2},....])

В этом списке можно найти интересующие вас комментарии и сделки:

filtered_deal_IDs = []
for deal_id, deal_comments in comments:
    if "Изготовить оригинальное клише" in [c['TITLE'] for c in deal_comments]:
        filtered_deal_ID.append(deal_id)


Теперь `filtered_deal_IDs` у вас содержит список ID искомых сделок.
Ответ написан
Комментировать
В Битрикс 24 есть REST API. И с ним пофиг на чём работать. Но нужна знать то, на чём работаешь.
Авторизуемся.
Делаем запросы на получение сделок.
Делаем то что нам нужно со сделками.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы