πŸ”§ Π˜Π½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡ ΠΏΠΎ настройкС доступа ΠΊ Google Sheets API

1. Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π² Google Cloud

ΠŸΠ΅Ρ€Π΅ΠΉΠ΄ΠΈ Π² Google Cloud Console.

Π’ Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ мСню Π²Ρ‹Π±Π΅Ρ€ΠΈ Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚.

Π£ΠΊΠ°ΠΆΠΈ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, MySheetsProject).

НаТми Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ.


2. Π’ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Google Sheets API

Π’ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄ΠΈ Π² мСню APIs & Services β†’ Library (Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°).

Найди Google Sheets API.

НаТми Enable (Π’ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ).


3. Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ ΡƒΡ‡Π΅Ρ‚Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ (credentials)

Π’ зависимости ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Ρ‚Ρ‹ ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅ΡˆΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ API, Π΅ΡΡ‚ΡŒ Π΄Π²Π° Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π°:

πŸ”Ή Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ 1. Если Π±ΡƒΠ΄Π΅ΡˆΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΎΡ‚ своСго ΠΈΠΌΠ΅Π½ΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, скрипт для сСбя)

ΠŸΠ΅Ρ€Π΅ΠΉΠ΄ΠΈ Π² APIs & Services β†’ Credentials.

НаТми Create Credentials β†’ OAuth client ID.

Настрой экран доступа (OAuth Consent Screen), Π²Ρ‹Π±Π΅Ρ€ΠΈ External (внСшний) ΠΈΠ»ΠΈ Internal, ΡƒΠΊΠ°ΠΆΠΈ e-mail ΠΈ Π½Π°Π·Π²Π°Π½ΠΈΠ΅.

Π’Ρ‹Π±Π΅Ρ€ΠΈ Ρ‚ΠΈΠΏ прилоТСния:

Desktop app (Ссли это скрипт для ПК)

Web app (Ссли сСрвСр)

Π‘ΠΊΠ°Ρ‡Π°ΠΉ JSON-Ρ„Π°ΠΉΠ» с ΠΊΠ»ΡŽΡ‡Π°ΠΌΠΈ (client_secret.json).

ΠŸΡ€ΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠΌ запускС Ρ‚Π²ΠΎΠΉ скрипт попросит Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΡŽ Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅ ΠΈ сохранит Ρ‚ΠΎΠΊΠ΅Π½.


πŸ”Ή Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ 2. Если Π½ΡƒΠΆΠ½ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ скрипт/Π±ΠΎΡ‚ ΠΈΠΌΠ΅Π» доступ Π±Π΅Π· подтвСрТдСния

(Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, сСрвСр, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ сам Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ с Ρ‚Π°Π±Π»ΠΈΡ†Π΅ΠΉ)

ΠŸΠ΅Ρ€Π΅ΠΉΠ΄ΠΈ Π² APIs & Services β†’ Credentials.

НаТми Create Credentials β†’ Service account.

Π—Π°Π΄Π°ΠΉ имя (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, sheet-bot).

Π‘ΠΎΡ…Ρ€Π°Π½ΠΈ JSON-Ρ„Π°ΠΉΠ» (это ΠΊΠ»ΡŽΡ‡ сСрвиса).

ΠžΡ‚ΠΊΡ€ΠΎΠΉ свою Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π² Google Sheets ΠΈ подСлись доступом с e-mail сСрвисного Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Π° (ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΈΠ΄Π° xxxxx@project-id.iam.gserviceaccount.com).


4. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ доступ

ΠžΡ‚ΠΊΡ€ΠΎΠΉ Google Sheets ΠΈ создай Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ.

Π‘ΠΊΠΎΠΏΠΈΡ€ΡƒΠΉ Π΅Ρ‘ ID ΠΈΠ· URL:
https://docs.google.com/spreadsheets/d/<ID>/edit

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ gspread ΠΈΠ»ΠΈ google-api-python-client, ΡƒΠΊΠ°Π·Π°Π² ID Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠΈ ΠΊΠ»ΡŽΡ‡ΠΈ.


⚑ Π“ΠΎΡ‚ΠΎΠ²ΠΎ β€” послС этого Ρ‚Π²ΠΎΠΉ ΠΊΠΎΠ΄ смоТСт Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΈ ΠΏΠΈΡΠ°Ρ‚ΡŒ Π² Google Π’Π°Π±Π»ΠΈΡ†Ρ‹.

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *