Битрикс24 REST API предоставляет широкие возможности для программистов, давайте разберемся как им пользоваться с помощью Python
Некоторое время назад, CRM от комании 1С Битрикс открыла API для своих пользователей, что дало возможность взаимодействовать с данными CRM через сторонние сервисы или софт.
Так однажды мне понадобилось написать программу, которая собирает данные потенциальных клиентов с сайтов и добавляет их в CRM систему автоматически в качестве лидов. Сегодня я подробнее распишу ту часть программы, которая заливает лиды в CRM.
Итак, исходные данные у меня в формате .csv и таблица выглядит примерно следующим образом:
Иванов Иван Иванович 79998887766 some@mail.ru хочет лендинг на продажу щебня
Петрова Мария Ивановна 79998887766 some@mail.ru хочет сделать сайт адаптивным под мобильные устройства
Морозов Павел 79998887766 some@mail.ru необходима разработка калькулятора на сайт
Чтобы распарсить такой файл, я использую библиотеку csv из стандатрной библиотеки python
import csvwith open(‘myleads.csv’, newline=’\n’ , encoding=’utf-8′) as csvfile: # открываем файл на чтение, указываем что переход строки в файле происходит по символу ‘\n'(перенос строки) csv_iter = csv.reader(csvfile, delimiter=’,’) for row in csv_iter: # для каждой строки в файле name = row[0] # присваиваем переменной данные из первого столбца phone = row[1] # присваиваем переменной данные из второго столбца mail = row[2] # присваиваем переменной данные из третьего столбца comment = row[3] # присваиваем переменной данные из четвертого столбца
Эта часть программы проходит циклом по таблице и присваивает переменным информацию из стобцов. Теперь добавим добавим в цикл функцию, которая будет собственно отправлять эти данные в CRM Bitrix24 в качестве лидов.
Допишем программу:
import csvimport requestswith open(‘myleads.csv’, newline=’\n’ , encoding=’utf-8′) as csvfile: # открываем файл на чтение, указываем что переход строки в файле происходит по символу ‘\n'(перенос строки)
csv_iter = csv.reader(csvfile, delimiter=’,’)
for row in csv_iter: # для каждой строки в файле name = row[0] # присваиваем переменной данные из первого столбца phone = row[1] # присваиваем переменной данные из второго столбца mail = row[2] # присваиваем переменной данные из третьего столбца comment = row[3] # присваиваем переменной данные из четвертого столбца
r = requests.get(‘https://my.bitrix24.ru/crm/configs/import/lead.php?LOGIN=myb24login&PASSWORD=myb24pass&TITLE=’+name+‘ &NAME=’+name+’&COMMENTS=’comment+’&PHONE_MOBILE=’+phone+’&ASSIGNED_BY_ID=1)
В последней строке мы отправляем GET запрос с помощью библиотеки requests, в котором указываем myb24login — мой логин, myb24pass — пароль, и подставляем пременные name, phone, mail, comment.
Как заполнить другие поля в карточке лидов, можно подсмотреть тут