theRavv commited on
Commit
634fa32
·
verified ·
1 Parent(s): 0004069

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +22 -8
app.py CHANGED
@@ -109,17 +109,31 @@ def make_post(the_title, the_text, your_user, your_password, your_site, wordpres
109
  data['categories'] = [int(wordpress_category_id)]
110
 
111
  try:
112
- # Menambah timeout untuk permintaan ke WordPress
113
- response = requests.post(api_url, headers=header, json=data, timeout=45)
114
  response.raise_for_status()
115
  return response.json()
116
  except requests.exceptions.RequestException as e:
117
- print(f"Error saat posting ke WordPress: {e}")
118
- if "401" in str(e):
119
- raise ConnectionRefusedError("Otentikasi Gagal (401). Periksa username dan application password Anda.")
120
- if "404" in str(e):
121
- raise ConnectionAbortedError("URL API tidak ditemukan (404). Pastikan URL situs dan permalink sudah benar.")
122
- # Melempar error asli untuk ditampilkan di log
 
 
 
 
 
 
 
 
 
 
 
 
 
 
123
  raise e
124
 
125
 
 
109
  data['categories'] = [int(wordpress_category_id)]
110
 
111
  try:
112
+ # --- PERBAIKAN: Timeout ditambah dan penanganan error lebih detail ---
113
+ response = requests.post(api_url, headers=header, json=data, timeout=60)
114
  response.raise_for_status()
115
  return response.json()
116
  except requests.exceptions.RequestException as e:
117
+ error_message = f"Error saat posting ke WordPress: {e}"
118
+ print(error_message)
119
+
120
+ # Memberikan detail lebih spesifik untuk error umum
121
+ if e.response is not None:
122
+ status_code = e.response.status_code
123
+ print(f"Server merespons dengan Status Code: {status_code}")
124
+ # Mencetak sebagian isi respons untuk membantu diagnosis
125
+ print(f"Response Body (mungkin berisi petunjuk): {e.response.text[:500]}...")
126
+
127
+ if status_code == 401:
128
+ raise ConnectionRefusedError("Otentikasi Gagal (401). Periksa username dan application password Anda sudah benar dan memiliki izin untuk membuat post.")
129
+ if status_code == 403:
130
+ raise ConnectionRefusedError(f"Akses Dilarang (403). Kemungkinan diblokir oleh plugin keamanan (misal: Wordfence) di WordPress Anda. Coba nonaktifkan sementara atau whitelist IP aplikasi ini.")
131
+ if status_code == 404:
132
+ raise ConnectionAbortedError("URL API tidak ditemukan (404). Pastikan URL situs dan permalink sudah benar.")
133
+ if status_code == 502:
134
+ raise ConnectionAbortedError("Error 502 Bad Gateway dari server WordPress Anda. Ini adalah masalah di sisi server hosting (misalnya, overload, firewall, atau error PHP), bukan di aplikasi ini. Coba lagi nanti atau periksa log error di server WordPress Anda.")
135
+
136
+ # Melempar error asli jika tidak ada penanganan spesifik
137
  raise e
138
 
139