Запись в Google Таблицу
Задача: получить имя и номер телефона пользователя и сохранить их в таблицу.
Шаг 1. Имеется простой агент "Секретарь".
Системный промпт:
Ты виртуальный секретарь,
Спроси имя и номер телефона, после этого вызови функцию save_record_to_google_sheet
Шаг 2. В разделе Функции обязательно включите (если выключено) использование функций.
Создайте функцию save_record_to_google_sheet
с описанием "Сохранить запись в Google Таблице".
Добавьте два параметра: name
и phone_number
.
Шаг 3. Найдите ваш JSON-ключ, полученный на этапе Подготовка Google аккаунта и получение ключа для интеграции
Прокрутите страницу вниз и включите Python Script.
Шаг 4. Удалите текущий код и вставьте подготовленный код:
def write_to_google_sheet():
scope = [
'https://www.googleapis.com/auth/spreadsheets',
'https://www.googleapis.com/auth/drive'
]
# Надо заменить данные на ваш JSON ключ
json_data = {
"type": "service_account",
"project_id": "your_project_id",
"private_key_id": "your_private_key_id",
"private_key": "-----BEGIN PRIVATE KEY-----\nyour_private_key\n-----END PRIVATE KEY-----\n",
"client_email": "your_service_account_email",
"client_id": "your_client_id",
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
"token_uri": "https://oauth2.googleapis.com/token",
"auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
"client_x509_cert_url": "your_client_cert_url"
}
# Получаем ServiceAccountCredentials из структуры словаря
debug("Получаем ServiceAccountCredentials")
ServiceAccountCredentials = oauth2client['service_account']['ServiceAccountCredentials']
# Авторизация
creds = ServiceAccountCredentials.from_json_keyfile_dict(json_data, scope)
client = gspread.authorize(creds)
# Открытие таблицы
sheet = client.open(table_name).sheet1
data_to_append = [args.get("name", ""), args.get("phone_number", "")]
# Запись данных
sheet.append_row(data_to_append)
global result
result = {
'status': 'success',
'write': {
'message': 'Данные успешно записаны',
'data': data_to_append
}
}
table_name = 'Имя Вашей Таблицы' #тут прописываем имя таблицы
result ={}
write_to_google_sheet()
Обязательно вставьте свои данные в json_data
и укажите актуальное имя таблицы в table_name
.
Код надо подготовить. Из файла с ключом скопируйте все что между фигурными скобочками и вставьте в json_data переменную

Не забудьте прописать имя вашей таблицы
table_name = 'Имя Вашей Таблицы' #тут прописываем имя таблицы
Пример таблицы: Таблица "Contacts" с двумя колонками: "Имя" и "Номер телефона".
Тест:

Оставьте в полях name
и phone_number
значения test_value
, нажмите "Запустить тест"— и убедитесь, что запись появилась в таблице.

Можно проверить работу из диалога

Убедитесь что, что запись появилась в таблице.

Last updated