import csv
import requests
import tkinter as tk
from tkinter import filedialog
from tkinter import messagebox

def process_csv(csv_file, output_path):
    with open(csv_file, "r") as file:
        reader = csv.reader(file)
        header = next(reader) # skip the header row
        for row in reader:
            name, url, rating = row
            response = requests.get(url)
            if response.status_code == 200:
                subfolder = output_path + "/" + rating
                if not os.path.exists(subfolder):
                    os.makedirs(subfolder)
                file_path = subfolder + "/" + name + ".png"
                with open(file_path, "wb") as f:
                    f.write(response.content)
            else:
                messagebox.showerror("Error", f"Failed to download {name} from {url}")

def select_csv():
    csv_file = filedialog.askopenfilename(initialdir = "/", title = "Select CSV file", filetypes = (("CSV files", "*.csv"), ("all files", "*.*")))
    if csv_file:
        return csv_file

def select_output_path():
    output_path = filedialog.askdirectory(initialdir = "/", title = "Select output path")
    if output_path:
        return output_path

root = tk.Tk()
root.withdraw()
csv_file = select_csv()
if csv_file:
    output_path = select_output_path()
    if output_path:
        process_csv(csv_file, output_path)
        messagebox.showinfo("Success", "Processing completed")
นำเข้า csv คำขอนำเข้า นำเข้า tkinter เป็น tk จาก tkinter นำเข้า filedialog จาก tkinter นำเข้ากล่องข้อความ def process_csv(csv_file, output_path): ด้วย open(csv_file, "r") เป็นไฟล์: reader = csv.reader(file) header = next(reader) # ข้ามแถวส่วนหัวสำหรับแถวในเครื่องอ่าน: ชื่อ, url, การให้คะแนน = แถว การตอบสนอง = การร้องขอ.get (url) ถ้า response.status_code == 200: โฟลเดอร์ย่อย = output_path + "/" + การให้คะแนน หากไม่ใช่ os.path.exists ( โฟลเดอร์ย่อย): os.makedirs(โฟลเดอร์ย่อย) file_path = โฟลเดอร์ย่อย + "/" + ชื่อ + ".png" โดยเปิด (file_path, "wb") เป็น f: f.write(response.content) else: messagebox.showerror(" ข้อผิดพลาด", f"ไม่สามารถดาวน์โหลด {name} จาก {url}") def select_csv(): csv_file = filedialog.askopenfilename(initialdir = "/", title = "เลือกไฟล์ CSV", filetypes = (("ไฟล์ CSV" , "*.csv"), ("ไฟล์ทั้งหมด", "*.*"))) ถ้า csv_file: return csv_file def select_output_path(): output_path = filedialog.askdirectory(initialdir = "/", title = "เลือกเส้นทางเอาต์พุต ") ถ้า output_path: return output_path root = tk.Tk() root.withdraw() csv_file = select_csv() ถ้า csv_file: output_path = select_output_path() ถ้า output_path: process_csv(csv_file, output_path) messagebox.showinfo("Success", " การประมวลผลเสร็จสมบูรณ์")
spam fails_task lang_mismatch pii not_appropriate hate_speech sexual_content quality toxicity humor helpfulness creativity violence