-
[wordpress-xmlrpc] 파이썬으로 워드프레스 자동 포스팅 구현해보기Python/웹프레임워크 2024. 4. 30. 10:12반응형
파이썬으로 워드프레스 자동 포스팅 구현해보기
많은 분들이 업무 자동화에 관심을 가지는 이 시기에, 문서 작성까지도 자동화를 구현하려는 분들도 덩달아 늘어나고 있습니다. 이번에는 파이썬으로 워드프레스 설치형 블로그에 자동으로 포스팅할 수 있는 시스템을 구현해 보겠습니다. 워드프레스는 XML-RPC 프로토콜을 지원하고 있는데, 이를 이용하면 인터넷 창을 켜지 않고도 간편하게 포스팅을 할 수 있지요. 파이썬을 이용해서 해당 규격을 만족하는 코드를 작성해 둔다면, 자동으로 포스팅을 할 수 있는 시스템까지도 구현할 수 있습니다.
python-wordpress-xmlrpc 포스팅
파이썬에서는 XML-RPC 규격을 외워두지 않고도 워드프레스 자동 포스팅을 구현할 수 있도록 하는 python-wordpress-xmlrpc 패키지가 배포되고 있습니다. 만약 설치하지 않았다면,
pip install python-wordpress-xmlrpc
명령어를 이용해서 설치해 주시기 바랍니다.python-wordpress-xmlrpc를 이용해서 포스팅하는 작업은 크게 두 가지 데이터 묶음이 필요합니다.
- 워드프레스 블로그 URL, ID, 비밀번호로 이루어진 계정 정보 묶음
- 게시글 제목, 슬러그(식별자), 본문, 태그, 카테고리를 정의한 포스팅 정보 묶음
이 두 가지 데이터 묶음이 준비되었다면,
wordpress_xmlrpc.Client
에 계정 정보 묶음을 입력하고,wordpress_xmlrpc.WordPressPost
에 포스팅 정보 묶음을 입력해 주시면 됩니다.# Import Package from wordpress_xmlrpc import Client, WordPressPost from wordpress_xmlrpc.methods.posts import NewPost # Account info. client = Client('https://your_url.com/xmlrpc.php', 'ID', 'PW') postx = WordPressPost() # Posting postx.title = 'TITLE' # 제목 postx.slug = 'url_slug' # https://your_url.com/url_slug postx.content = '글 내용을 입력하세요' # 본문 postx.terms_names = { 'post_tag': 'tag1, tag2', # 태그 'category' : ['미분류'] # 카테고리 } postx.post_status = 'publish' # publish: 발행, draft: 임시저장 client.call(NewPost(postx))
작성한 포스팅 삭제하기
python-wordpress-xmlrpc는 기존에 쓴 글을 삭제할 수도 있습니다. 이 때는 슬러그 정보만 입력해 두면 되는데요, 슬러그는 워드프레스 URL에서 슬래시(/) 다음에 오는 식별자를 확인해 두시면 됩니다. 삭제를 위한 기능은
wordpress_xmlrpc.posts.DeletePost
로 구현되어 있습니다.# Import Package from wordpress_xmlrpc.methods.posts import DeletePost # Delete Post DeletePost('url_slug')
반응형'Python > 웹프레임워크' 카테고리의 다른 글
[Django] 장고를 이용한 파이썬 API서버 만들기 (3) 2024.12.30 [Django] Invalid HTTP_HOST header 에러 해결하는법 알아보기 (0) 2023.11.23 [PyScript] 파이스크립트를 이용해서 웹사이트에 파이썬 코드 써 보기 (0) 2023.04.17