Rumah >pembangunan bahagian belakang >Tutorial Python >Mengikis Saluran Telegram Baharu
Saluran telegram semakin berkembang setiap hari, dan mencari saluran terbaharu boleh memberi anda cerapan tentang komuniti sohor kini dan topik popular. Menggunakan API GroupFind, kami boleh dengan mudah menarik saluran baharu setiap hari dan menyimpannya ke CSV untuk analisis atau pemantauan. Dalam tutorial ini, saya akan membimbing anda melalui skrip Python mudah untuk mengautomasikan proses ini.
API GroupFind menawarkan titik akhir untuk mendapatkan semula kumpulan Telegram yang baru disenaraikan:
https://api.groupfind.org/api/groups?skip=0&sort=newest
Titik akhir ini mengembalikan data dalam format JSON, dengan medan seperti groupTitle, kategori, ahliCount, teg dan banyak lagi. Kami akan menggunakan data ini untuk membina CSV kami, mengemas kini setiap hari dengan penyenaraian baharu.
Mari mulakan dengan mengimport perpustakaan yang diperlukan dan menyediakan fungsi untuk menarik data terkini dan menyimpannya ke fail CSV.
import requests import csv from datetime import datetime import time
Di sini, kami akan menyediakan fungsi yang:
def fetch_and_save_new_telegram_channels(): url = "https://api.groupfind.org/api/groups?skip=0&sort=newest" response = requests.get(url) if response.status_code == 200: channels = response.json() filename = "new_telegram_channels.csv" fieldnames = [ "ID", "Title", "Category", "Member Count", "NSFW", "Description", "Tags", "Profile Photo URL", "Added Date" ] with open(filename, mode="a", newline="", encoding="utf-8") as file: writer = csv.DictWriter(file, fieldnames=fieldnames) if file.tell() == 0: writer.writeheader() # Write header only once for channel in channels: writer.writerow({ "ID": channel["id"], "Title": channel["groupTitle"], "Category": channel["category"], "Member Count": channel["memberCount"], "NSFW": channel["isNsfw"], "Description": channel["groupDescription"], "Tags": ", ".join(channel["tags"]), "Profile Photo URL": channel["profilePhoto"], "Added Date": channel["addedDate"] }) print(f"Successfully added {len(channels)} new channels to {filename}.") else: print("Failed to fetch data. Status code:", response.status_code)
Untuk mengautomasikan skrip ini untuk dijalankan setiap hari, kami boleh menggunakan modul masa terbina dalam Python untuk kesederhanaan, atau menyediakannya sebagai tugas cron pada pelayan.
def run_daily(): while True: print(f"Running script at {datetime.now()}") fetch_and_save_new_telegram_channels() time.sleep(86400) # Wait for 24 hours
Cuma jalankan skrip, dan ia akan mengambil saluran Telegram baharu setiap hari, menambahkannya pada new_telegram_channels.csv. Fail tersebut akan mengumpul data dari semasa ke semasa, memberikan rekod yang semakin meningkat bagi komuniti Telegram baharu.
if __name__ == "__main__": run_daily()
Atas ialah kandungan terperinci Mengikis Saluran Telegram Baharu. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!