Để tạo giao diện cho chương trình Python của bạn, bạn có thể sử dụng thư viện `tkinter`, một thư viện tiêu chuẩn của Python cho việc xây dựng giao diện người dùng đồ họa (GUI). Dưới đây là mã hoàn chỉnh với giao diện có hai ô nhập cho tiêu đề và nội dung, cùng một nút để đăng bài viết lên WordPress.
### Mã Python với Giao Diện Tkinter
“`python
import requests
import base64
import json
import tkinter as tk
from tkinter import messagebox
# Hàm để gửi yêu cầu đăng bài
def post_article():
wordpress_user = ‘admin’ # Thay thế với tên người dùng của bạn
wordpress_password = ‘o0ld gOVP 2pyN zapO tkKC bgNU’ # Thay thế với mật khẩu ứng dụng của bạn
# Tạo token xác thực
wordpress_credentials = f'{wordpress_user}:{wordpress_password}’
wordpress_token = base64.b64encode(wordpress_credentials.encode())
wordpress_header = {‘Authorization’: ‘Basic ‘ + wordpress_token.decode(‘utf-8’)}
# Lấy dữ liệu từ ô nhập
title = title_entry.get()
content = content_entry.get(“1.0”, tk.END) # Lấy nội dung từ ô nhập nhiều dòng
# Dữ liệu bài viết mới
post_data = {
‘title’: title,
‘content’: content,
‘status’: ‘publish’,
‘excerpt’: ‘Mô tả ngắn của bài viết’,
‘categories’: [1, 2] # Thay thế với ID danh mục bạn muốn
}
# URL API để tạo bài viết mới
api_url = ‘https://nguoikhongten.com/wp-json/wp/v2/posts’
try:
# Gửi yêu cầu POST để tạo bài viết mới
response = requests.post(api_url, headers=wordpress_header, json=post_data)
# Kiểm tra kết quả
if response.status_code == 201:
messagebox.showinfo(“Thành công”, “Bài viết đã được tạo thành công!”)
else:
error_message = response.json().get(‘message’, ‘Có lỗi xảy ra’)
messagebox.showerror(“Lỗi”, f”Có lỗi xảy ra: {error_message}”)
except requests.ConnectionError:
messagebox.showerror(“Lỗi”, “Không thể kết nối tới trang WordPress.”)
except Exception as e:
messagebox.showerror(“Lỗi”, f”Có lỗi xảy ra: {e}”)
# Tạo cửa sổ chính
root = tk.Tk()
root.title(“Đăng Bài Viết lên WordPress”)
# Tạo nhãn và ô nhập tiêu đề
title_label = tk.Label(root, text=”Tiêu đề bài viết:”)
title_label.pack(pady=5)
title_entry = tk.Entry(root, width=50)
title_entry.pack(pady=5)
# Tạo nhãn và ô nhập nội dung
content_label = tk.Label(root, text=”Nội dung bài viết:”)
content_label.pack(pady=5)
content_entry = tk.Text(root, height=10, width=50)
content_entry.pack(pady=5)
# Tạo nút đăng bài
post_button = tk.Button(root, text=”Đăng Bài Viết”, command=post_article)
post_button.pack(pady=20)
# Chạy ứng dụng
root.mainloop()
“`
### Hướng Dẫn Sử Dụng
1. **Cài đặt Thư Viện Tkinter**: Tkinter thường đã được cài đặt sẵn với Python. Nếu chưa có, bạn có thể cài đặt nó bằng lệnh:
“`bash
pip install tk
“`
2. **Chạy Mã**: Lưu mã trên vào file Python, ví dụ `post_article_gui.py`, và chạy bằng lệnh:
“`bash
python post_article_gui.py
“`
3. **Điền Thông Tin**: Nhập tiêu đề và nội dung bài viết vào các ô nhập và nhấn nút “Đăng Bài Viết” để gửi yêu cầu đăng bài.
### Lưu Ý
– **Thông Tin Đăng Nhập**: Hãy đảm bảo rằng thông tin đăng nhập của bạn (tên người dùng và mật khẩu ứng dụng) là chính xác.
– **Kiểm Tra Kết Nối Internet**: Đảm bảo máy tính của bạn có kết nối Internet khi chạy ứng dụng này.
Nếu bạn gặp vấn đề nào khác hoặc cần thêm trợ giúp, hãy cho tôi biết nhé!