Задать вопрос
x4zx
@x4zx
python developer

Как интегрировать python код в tauri?

Вопрос в следующем, мне необходимо внедрить python скрипт в десктоп приложение на tauri. Текущая связка: Tauri + React + Rust. Из того что мне требуется использовать в python коде, это следующие зависимости:
  • google-auth==2.38.0
  • google-auth-oauthlib==1.2.1
  • google-api-python-client==2.161.0


Я уже прибег к использованию следующего решения: https://github.com/marcomq/tauri-plugin-python, но пока не разобрался можно ли в нём использовать не встроенные в python зависимости. Поэтому решил задать вопрос тут, возможно кто-то уже имел подобный опыт.

Подробно:
Из того что мне необходимо - это обмен данных которые дает google при создании нового клиента внутри проекта в google cloud console на access token чтобы была возможность проводить запросы регулярно. В моём прошлом приложении чисто на python зависимости описанные выше - требовали файл (обычно client_secret.json) то бишь данные от google и с помощью них - пользователя автоматически перекидывало в браузер в котором открывалась новая страница где ему нужно было авторизироваться в аккаунт которому принадлежит проект. После успешного логина библиотеки автоматически сами всё подхватывали - и обмен на access token успешно завершался. Я также пробывал повторить процесс переписав всё на Rust но честно говоря у меня это не очень вышло, поскольку язык для меня достаточно новый и переписать приложение на нём, учтя все моменты, пока трудно. Легче каким-то образом интегрировать python код.

Надеюсь понятно разъяснил свою ситуацию.
Заранее спасибо за советы!

UPD: Так как тега Tauri нет, я использовал связанные с ним теги языков.
  • Вопрос задан
  • 158 просмотров
Подписаться 1 Средний 2 комментария
Решения вопроса 1
fenrir1121
@fenrir1121
Начни с документации
Есть два пути
- Использовать pyo3
- Использовать sidecar в tauri (пример с питоном)

Оба способа на мой взгляд сложнее и труднее поддерживаются, чем переписать. Код для авторизации лежит прямо в examples в oauth2-rs
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@alekssamos
Программист любитель
Посоветую ещё один странный способ, но всё же. Взять "UV" и ваш python скрипт. UV можно скачать как один единый elf / exe файл, передать ему имя скрипта и зависимости, а python, всё остальное он скачает и установит сам в фоне незаметно.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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