Article
PHP: 네이버 블로그 XMLRPC API로 글 자동 작성
네이버 블로그를 프로그래밍으로 자동화하기
네이버 블로그는 공식 XMLRPC API를 제공합니다. 이를 활용하면 웹 인터페이스 없이 PHP 코드로 직접 블로그 글을 작성, 수정, 삭제할 수 있습니다. 정기적인 포스팅이나 데이터 기반 콘텐츠 생성이 필요한 경우 매우 유용합니다.
설치 및 준비
Composer로 라이브러리 설치
composer require lovizu/naver-blog-xmlrpc
API 연결 암호 획득
- 네이버 블로그 관리 페이지 접속
- 설정 → API 메뉴에서 API 연결 암호 확인 및 복사
기본 사용법
연결 초기화
require 'vendor/autoload.php';
$blogId = 'your-naver-id';
$blogPass = 'api-connection-password';
$endPoint = 'https://api.blog.naver.com/xmlrpc';
$naverBlog = new NaverBlogXml($blogId, $blogPass, $endPoint);
글 작성
기본 작성
$postId = $naverBlog
->setItem('글 제목', '글 내용')
->post();
카테고리 추가
$naverBlog
->setItem('제목', '내용')
->setCategory('카테고리명')
->post();
카테고리명에 띄어쓰기가 포함되면 정확히 입력해야 합니다.
태그 추가
// 배열로 지정
$naverBlog
->setItem('제목', '내용')
->setTags(['태그1', '태그2', '태그3'])
->post();
// 쉼표로 구분하여 지정
$naverBlog
->setItem('제목', '내용')
->setTags('태그1,태그2,태그3')
->post();
비공개 글
$naverBlog
->setItem('제목', '내용')
->setSecret()
->post();
글 수정 및 삭제
글 수정
$postId = '123456';
$naverBlog
->setItem('새 제목', '새 내용')
->post($postId);
글 삭제
$postId = '123456';
$naverBlog->delBlog($postId);
이미지 처리
본문에 포함된 이미지 태그는 자동으로 네이버 서버에 업로드되고 URL이 변환됩니다. 별도의 이미지 처리 로직이 필요 없습니다.
실무 팁
- 수정 방식: 기존 글 삭제 후 새로 작성하는 방식으로 구현됨
- 대량 작성: 지연(delay)을 추가하여 서버 부하 분산
- 보안: API 연결 암호는 절대 버전관리에 포함시키지 말 것
- 체이닝: setItem, setCategory, setTags, setSecret 등을 체이닝으로 조합 가능
마치며
네이버 블로그를 프로그래밍으로 자동화하면 정기적인 포스팅, 데이터 기반 콘텐츠 생성, 그리고 다양한 소스로부터의 집계 글 작성 등이 가능합니다. XMLRPC API의 단순하면서도 강력한 기능을 활용해 블로그 운영 업무를 효율화할 수 있습니다.
댓글