Posts

Showing posts from July, 2025

Proyek Scraping Python

Harga Saham Naik Walaupun Banyak yang Jual A. Pengantar Proyak Scraping Python Dengan Python dan pustaka scraping gratis, kamu bisa otomatis mengambil data dari situs tertentu (selama tidak melanggar syarat penggunaan situs tersebut). B. Contoh Proyek Python English Bahasa Indonesia Project Details Rincian Proyek I'm looking for a Python developer to create a script that converts CSV data into an Excel file and populates additional columns with information sourced from the internet. Saya mencari pengembang Python untuk...

Buat Database & Server Lokal (Localhost)

Harga Saham Naik Walaupun Banyak yang Jual A. Pengantar Database Server Lokal Database seperti MySQL dan PostgreSQL sangat umum dijalankan di server lokal (local server). Penggunaan server lokal banyak dipilih oleh pengembang dan administrator basis data untuk keperluan: Belajar atau mengembangkan lokal aplikasi agar lebih cepat dan hemat biaya sebelum dipublikasikan ke server online (seperti VPS, cloud hosting, dll). Melakukan pengujian (testing) Membuat prototipe Belajar administrasi basis data ✅ Penjelasan Singkat: Server lokal berarti komputer Anda sendiri bertindak sebagai server database. Anda dapat menginstal database engine seperti: MySQL Server PostgreSQL S...

API Spreadsheet & Drive - Google Cloud Console dengan Service Account

Petunjuk Membuat Service Account untuk Google API Mengakses Spreadsheet dengan Service Account Untuk mengakses Google Sheets menggunakan Service Account, buat terlebih dahulu Service Account dan siapkan kunci dalam format JSON , lalu simpan sebagai credentials.json . Alur Lengkap Pembuatan Service Account dan JSON Key Masuk ke Google Cloud Console lalu klik Select Project . Create Service Accounts . Aktifkan IAM API . Enable access to API . Nama proyek: Contoh: My Project 90684 , dengan Project ID: fabled-era-466003-m6 . Nama proyek bisa diubah di Settings (klik ikon pensil/edit lalu save). Project ID tidak bisa diubah. Klik Continue dan ikuti tautan seperti: Now that you are done, go to https://console.cloud.google.com . Buka APIs & Services untuk mengelola API dan OAuth credentials. Di halaman Service Accounts , isi data beri...

Fitur Bot Telegram & Google Sheets

Perbaikan Kode Python: Lakukan revisi menyeluruh pada fungsi send_text dan send_file agar lebih aman, rapi, terstruktur, dan mudah dilacak ketika terjadi error. Validasi Token dan Chat ID: Tambahkan pengecekan keberadaan token, chat ID, dan file sebelum mengirim permintaan ke Bot Telegram, supaya meminimalkan error yang tidak terduga. Format Output: Tampilkan hasil response API dalam format JSON yang terbaca rapi agar memudahkan proses debug dibanding hanya menggunakan res.text mentah. Penjelasan Fungsi: Sertakan docstring pada setiap fungsi untuk menjelaskan maksud, parameter, dan hasil yang diharapkan, sehingga lebih mudah dipahami atau dikembangkan ulang. Penanganan Error 403: Ketahui arti kode status HTTP 403: menandakan token valid tetapi chat ID salah atau bot belum diizinkan untuk berinteraksi. Keamanan Variabel Lingkungan: Hindari menyimpan token dan chat ID langsung di dalam file Python. Gunakan environment variable dengan file .env atau perint...

Setup Bot Telegram & Google Sheets v1

Contoh Setup Bot Telegram & Google Sheets 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.rai...

XML Task Scheduler Window v1

Cara Pakai - Stock Alert Task ⚙️ Cara Pakai - StockAlertTask ✅ 1️⃣ Simpan file Simpan konfigurasi berikut dalam file bernama StockAlertTask.xml . ✅ 2️⃣ Edit di Notepad Buka StockAlertTask.xml dengan Notepad dan ubah bagian berikut: Ganti path sesuai lokasi project kamu: <Command>D:\Python\stock-alert-app\run_alert.bat</Command> <WorkingDirectory>D:\Python\stock-alert-app</WorkingDirectory> Ganti interval waktu jika diperlukan: <Interval>PT5M</Interval> PT5M = setiap 5 menit PT10M = setiap 10 menit PT30M = setiap 30 menit, dst. ✅ 3️⃣ Import ke Task Scheduler Buka Task Scheduler Klik Import Task... Pilih file StockAlertTask.xml Klik OK Jika muncul pilihan, centang Run with highest privileges ✅ 4️⃣ Jalankan Tes Pilih task yang baru diimpor Klik Run Buka ...

Fitur dalam HTML v1

Fitur dalam HTML: Definisi, Contoh, Istilah Teknis Fitur dalam HTML 1. Definisi HTML ( HyperText Markup Language ) adalah bahasa markup standar untuk membuat dan menyusun halaman web. HTML menyediakan berbagai fitur untuk mengatur konten, seperti highlight teks, membuat kutipan menggunakan <blockquote> , membuat tabel, dan daftar pustaka. 2. Contoh Penggunaan 2.1 Highlight Gunakan tag <mark> untuk menyorot teks: <p>Teks ini memiliki highlight penting.</p> 2.2 Blockquote Gunakan tag <blockquote> untuk kutipan panjang: <blockquote>Ini adalah contoh kutipan panjang dalam HTML.</blockquote> 2.3 Tabel Istilah Berikut contoh tabel istilah teknis: Istilah Definisi <mark> Digunakan untuk menyorot teks penting. <blockquote> D...

Alert Saham Turun Python v1-3 (python-telegram-bot Version: 22.2)

import os import gspread from datetime import datetime from oauth2client.service_account import ServiceAccountCredentials import requests # === KONFIGURASI === SPREADSHEET_ID = '1OIn23gLfPC8_6TFO7EqZubc2PYUN0m7QLcMJ8aI3ir4' # Ganti dengan ID spreadsheet kamu WORKSHEET_NAME = 'Sheet1' CREDENTIALS_FILE = 'fabled-era-466003-m6-9090d22f310e.json' FOLDER_ALERT = 'alert_files' # === TELEGRAM BOT === TELEGRAM_TOKEN = '8050614158:AAGnHHBERuADp2bBFl3PHsaFSuctLol6yVM' TELEGRAM_CHAT_ID = '8050614158' # === AUTENTIKASI GOOGLE SHEETS === scope = [ "https://spreadsheets.google.com/feeds", "https://www.googleapis.com/auth/drive" ] creds = ServiceAccountCredentials.from_json_keyfile_name(CREDENTIALS_FILE, scope) client = gspread.authorize(creds) sheet = client.open_by_key(SPREADSHEET_ID).worksheet(WORKSHEET_NAME) data = sheet.get_all_values() # === BUAT FOLDER JIKA BELUM ADA === os.makedirs(FOLDER_ALERT, exist_ok=True) ...