Last active
December 23, 2024 21:37
-
-
Save openroomxyz/f32021d077d1be5235ceb1a716d1e37a to your computer and use it in GitHub Desktop.
Python WordPress API : How to upload image to wordpress?
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import base64, requests, json | |
def header(user, password): | |
credentials = user + ':' + password | |
token = base64.b64encode(credentials.encode()) | |
header_json = {'Authorization': 'Basic ' + token.decode('utf-8')} | |
return header_json | |
def upload_image_to_wordpress(file_path, url, header_json): | |
media = {'file': open(file_path,"rb"),'caption': 'My great demo picture'} | |
responce = requests.post(url + "wp-json/wp/v2/media", headers = header_json, files = media) | |
print(responce.text) | |
hed = header("admin","XXXX XXXX XXXX XXXX XXXX XXXX") #username, application password | |
upload_image_to_wordpress('C://Users//X//Desktop//X//X.png', 'https://XXX.xyz/XXX/',hed) |
Thank you so much!
SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape
If you're on windows, you may need to add an 'r' in front of your file path or use double '\'
ex: file = r"C:\Users*user*\Desktop*image*" or file = "C:\Users\user\Desktop\image"
How can I add title ?
Hello,
i get some Error:
<html>
<head><title>403 Forbidden</title></head>
<body>
<center><h1>403 Forbidden</h1></center>
<hr><center>nginx</center>
</body>
</html>
@Gurke258 Did you make sure to define an application password?
The application password is not the same password as the usual password for the login and needs to be generated in the user management.
How can I add title ?
@mzakariabigdata You can find the documentation of the API here https://developer.wordpress.org/rest-api/reference/media/
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape