워드프레스에 자동 포스팅 하는 방법은 크게 3가지다.
- 워드 프레스에서 글쓰기
- 워드프세스 rest api 이용하기
- python의 워드프레스 xmlrpc 이용하기
3번째 방법을 이용해 보겠다.
(1) 사전 설치 필요 : 터미널 창에 설치한다.
pip install python-wordpress-xmlrpc
pip install datetime
pip install pytz
(2) python 소스코드 작성
from wordpress_xmlrpc import Client, WordPressPost
from wordpress_xmlrpc.methods.posts import NewPost
from wordpress_xmlrpc.compat import xmlrpc_client
from wordpress_xmlrpc.methods.media import UploadFile
site_url = "http://gus.local/xmlrpc.php"
username = "username"
password = "pwd"
client = Client(site_url,username, password)
post = WordPressPost()
title = "게시글 제목입니다."
content = "여기에 내용을 담았어요."
post.title = title
post.content = content
post.post_status = "publish"
categories = ["워드프레스"]
tags = ["자동포스팅","워드프레스"]
post.terms_names = {
# "key" : "value"
"category" : categories
,"post_tag" : tags
}
# 썸네일 등록
image_path = "./img1.png"
image_data = None
# 바이너리 모드로 이미지 읽기
with open(image_path, 'rb') as f:
image_data = f.read()
# 이미지 데이터 업로드
data = {
"name" : f"{title}.png" # SEO 유리
,"type" : "image/jpg"
,"caption" : ""
,"description" : f"{title}"
}
data['bits'] = xmlrpc_client.Binary(image_data)
res = client.call(UploadFile(data))
thumbnail_id = res['id']
thumbnail_id = int(thumbnail_id)
post.thumbnail = thumbnail_id
client.call(NewPost(post))
print("포스팅 완료")
# input()
이미지 업로드 - 썸네일 출력 화면
이미지 원본은 img1.png이지만 썸네일 이름은 게시글 제목으로 만든다. 그래야 SEO에 유리하다.
이지지 업로드가 정상적으로 되면, id를 반환한다. 이 값을 post.thumbnail에 담아 포스팅한다.
res = client.call(UploadFile(data))
thumbnail_id = res['id']
thumbnail_id = int(thumbnail_id)
post.thumbnail = thumbnail_id
client.call(NewPost(post))
print("포스팅 완료")
자동 게시글 확인해 보자.
반응형
'코드리뷰 > 워드프레스' 카테고리의 다른 글
워드프레스 쇼핑 사이트 분석하기 - 리뷰구루 1탄 (5) | 2024.02.18 |
---|---|
네이버 검색 키워드 자동 추출하기 (파이썬 코드 무료 공개) (0) | 2024.02.12 |
워드프레스 자동 포스팅 환경 구축하기 (1) | 2024.02.11 |
댓글