Setup Bot Telegram & Google Sheets v1
Setup Bot Telegram & Google Sheets
1️⃣ Contoh .env
# File: .env TELEGRAM_TOKEN="ISI_TOKEN_BOT_ANDA" TELEGRAM_CHAT_ID="ISI_CHAT_ID_ANDA"
2️⃣ Cara Load .env dengan python-dotenv
# File: send_text.py
import os
import requests
from dotenv import load_dotenv
# Muat file .env di folder yang sama
load_dotenv()
TELEGRAM_TOKEN = os.getenv("TELEGRAM_TOKEN")
TELEGRAM_CHAT_ID = os.getenv("TELEGRAM_CHAT_ID")
def send_text(message: str):
"""
Mengirim pesan teks ke Telegram.
"""
if not TELEGRAM_TOKEN or not TELEGRAM_CHAT_ID:
raise ValueError("Token atau Chat ID tidak ditemukan. Cek .env!")
url = f"https://api.telegram.org/bot{TELEGRAM_TOKEN}/sendMessage"
payload = {"chat_id": TELEGRAM_CHAT_ID, "text": message}
response = requests.post(url, json=payload)
response.raise_for_status()
print(response.json())
if __name__ == "__main__":
send_text("Halo dari Python!")
3️⃣ Contoh Kirim File
# File: send_file.py
import os
import requests
from dotenv import load_dotenv
load_dotenv()
TELEGRAM_TOKEN = os.getenv("TELEGRAM_TOKEN")
TELEGRAM_CHAT_ID = os.getenv("TELEGRAM_CHAT_ID")
def send_file(file_path: str, caption: str = ""):
"""
Mengirim file ke Telegram.
"""
if not TELEGRAM_TOKEN or not TELEGRAM_CHAT_ID:
raise ValueError("Token atau Chat ID tidak ditemukan. Cek .env!")
if not os.path.isfile(file_path):
raise FileNotFoundError(f"File tidak ditemukan: {file_path}")
url = f"https://api.telegram.org/bot{TELEGRAM_TOKEN}/sendDocument"
with open(file_path, "rb") as file_data:
files = {"document": file_data}
data = {"chat_id": TELEGRAM_CHAT_ID, "caption": caption}
response = requests.post(url, files=files, data=data)
response.raise_for_status()
print(response.json())
if __name__ == "__main__":
send_file("contoh.pdf", "Ini file tes")
4️⃣ Contoh requirements.txt
python-dotenv requests gspread oauth2client flake8
5️⃣ Contoh README.md
# 🚀 Setup Bot Telegram & Google Sheets ## 1. Install Dependensi \`\`\`bash pip install -r requirements.txt \`\`\` ## 2. Buat File .env Buat file `.env` di folder script: \`\`\` TELEGRAM_TOKEN="ISI_TOKEN_BOT_ANDA" TELEGRAM_CHAT_ID="ISI_CHAT_ID_ANDA" \`\`\` ## 3. Jalankan \`\`\`bash python send_text.py python send_file.py \`\`\` ## 4. Debug Token & Chat ID Kalau variabel tidak terbaca, pastikan: - `.env` di folder yang sama. - Pakai `load_dotenv()`. - Bisa juga `export TELEGRAM_TOKEN="..."` di terminal. ## 5. Google Sheets Tambahkan script `sheets.py` dengan validasi exit(1) jika gagal.
6️⃣ Contoh Script Test
# File: test.py
print("Berhasil kirim!")
7️⃣ CMD vs PowerShell (Persamaan & Perbedaan)
- CMD Windows: Shell bawaan, perintah dasar (dir, copy, set).
- PowerShell: Lebih modern, dukung cmdlet, scripting, output berupa objek.
- Contoh:
CMD:set TELEGRAM_TOKEN=...
PowerShell:$Env:TELEGRAM_TOKEN="..."
Comments
Post a Comment