반응형
워드프레스 블로그를 운영하다 보면 지금까지 작성한 포스트의 제목과 URL을 한 번에 추출해야 할 때가 있습니다. 작성한 글 개수를 확인하거나, 퍼머링크 변경 시 구글 서치콘솔에서 URL을 다시 등록해야 할 필요가 있기 때문입니다.
이번 포스트에서는 파이썬 스크립트를 이용하여 워드프레스 포스트의 제목과 URL을 자동으로 추출한 후 엑셀 파일로 저장하는 방법을 소개하겠습니다. 아래 내용을 차근차근 따라 해보세요.
1. VS Code 설치
우선, 파이썬 스크립트를 작성하고 실행하기 위해 VS Code를 설치해야 합니다.
2. 파이썬 소스코드 작성 및 실행하기
이제 실제로 워드프레스 포스트 제목과 URL을 추출하는 파이썬 스크립트를 작성해 보겠습니다.
2.1 파이썬 코드 작성
아래 코드를 VS Code에 복사하여 붙여넣기 한 후 실행하면 됩니다. 단, 아래의 api_endpoint 부분을 본인의 워드프레스 API URL로 변경해야 합니다.
import requests
import json
from openpyxl import Workbook
import time
def get_all_wordpress_posts(api_endpoint, auth=None):
headers = {'Accept': 'application/json'}
if auth:
headers['Authorization'] = auth
posts = []
page = 1
per_page = 10 # 한 번에 가져올 포스트 수
while True:
try:
response = requests.get(f"{api_endpoint}/posts?page={page}&per_page={per_page}", headers=headers)
response.raise_for_status()
page_posts = json.loads(response.content)
if not page_posts:
print(f"모든 페이지를 처리했습니다. 총 {len(posts)}개의 포스트를 가져왔습니다.")
break
posts.extend(page_posts)
page += 1
print(f"페이지 {page-1} 처리 완료. 총 {len(posts)}개의 포스트 가져옴.")
time.sleep(1) # 요청 간격 조절
except requests.exceptions.HTTPError as e:
print(f"HTTP 오류 발생: {e}")
break
except Exception as e:
print(f"예외 발생: {e}")
break
return posts
def save_to_excel(posts, filename="post_info.xlsx"):
wb = Workbook()
ws = wb.active
ws.append(["Title", "URL"]) # 헤더 추가
for post in posts:
ws.append([post['title']['rendered'], post['link']])
wb.save(filename)
print(f"{filename} 파일에 {len(posts)}개의 포스트 정보 저장 완료.")
# API 엔드포인트 설정 (예제 사이트 사용)
api_endpoint = 'https://yourwebsite.com/wp-json/wp/v2'
auth = 'Basic ' # 필요 시 인증 추가
print("포스트 가져오기 시작...")
posts = get_all_wordpress_posts(api_endpoint, auth)
print(f"총 {len(posts)}개의 포스트를 가져왔습니다.")
if posts:
save_to_excel(posts)
else:
print("가져온 포스트가 없습니다.")
2.2 실행 결과
위 코드를 실행하면 다음과 같은 과정이 진행됩니다:
- API를 통해 포스트 목록을 불러옵니다.
- 모든 포스트의 제목과 URL을 가져와 리스트에 저장합니다.
- 최종적으로 post_info.xlsx 파일에 저장됩니다.
2.3 생성된 파일 위치
post_info.xlsx 파일은 현재 실행 중인 파이썬 파일이 있는 폴더에 생성됩니다. 웹에서 파일을 다운로드할 때처럼 다운로드 폴더를 찾지 않도록 주의하세요!
3. 정리하기
이번 포스트에서는 Python을 활용하여 WordPress API와 연동하여 포스트 제목과 URL을 가져와 엑셀 파일로 저장하는 방법을 알아보았습니다.
이 기능을 활용하면 블로그 관리 자동화가 가능하며, 특히 포스트 URL을 한꺼번에 추출하여 구글 서치콘솔 등록 등의 작업을 더욱 쉽게 수행할 수 있습니다.
반응형
'IT' 카테고리의 다른 글
음성 텍스트 변환: 다글로(Daglo)를 활용한 효율적인 작업 방법 (0) | 2025.02.28 |
---|---|
딥시크 삭제 방법 총정리! 보안 문제 & 개인정보 유출 우려까지 싹 해결 (0) | 2025.02.28 |
워드프레스 백업 방법 완벽 가이드 (0) | 2025.02.28 |
워드프레스 비밀번호 재설정하기 (feat. 클라우드웨이즈) (0) | 2025.02.28 |
워드프레스 데이터(글, 페이지, 미디어 파일 등) 내보내기 및 가져오기 가이드 (0) | 2025.02.28 |