爲了驗證WordPress實例的安裝,我們正在編寫Python單元測試。其中一項測試應執行以下操作:將圖像上傳到WordPress。通過Python的請求將圖像上傳到WordPress
爲了做到這一點,我使用了請求庫。
當我通過Firebug的檢查/wp-admin/media-new.php頁面內的表格(表格信息,我得到以下信息): 形式 編號:文件的形式 名稱 方法:發佈 行動:http://localhost:8000/wp-admin/media-new.php
元素 ID:plupload-瀏覽按鈕 類型:按鈕 值:選擇文件
ID:異步上傳 名稱:異步上傳 類型:FIL Ë 標籤:上傳
ID:HTML上傳 名稱:HTML上傳 類型:提交 值:上傳
ID:POST_ID 名稱:POST_ID 類型:隱藏 值:0
ID:_wpnonce 名稱:_wpnonce 類型:隱藏 值:c0fc3b80bb
ID:FI LE-形式 名稱:_wp_http_referer 類型:隱藏 值:/wp-admin/media-new.php
我相信_wpnonce是每個會話生成一個唯一的值。因此,在嘗試上傳文件之前,我得到了media-new.php頁面,並在窗體中獲取_wpnonce(因此我的代碼中的變量)。
我的代碼如下:
with open('1.jpg', 'rb') as f:
upload_data = {'post_id': '0',
'_wp_http_referer': '/wp-admin/media-new.php',
'_wpnonce': wp_nonce,
'action': 'upload_attachement',
'name': '1.jpg',
'async-upload': f,
'html-upload': 'Upload'}
upload_result = session.post('http://localhost:8000/wp-admin/media-new.php', upload_data)
的代碼運行正常和upload_result.status_code等於200
然而,像從來沒有在WordPress的媒體庫顯示出來。
我相信這是一個簡單的錯誤,但我無法弄清楚我錯過了什麼。
在此先感謝您的幫助。
我認爲這[鏈接](https://wordpress.stackexchange.com/questions/240487/media-files-exist-in-upload-文件夾但不顯示)將幫助你。檢查上傳文件夾的權限。 – abhijit