Skip to main content

설표의 장고 디스토리, 티스토리 백업파일을 이용해 장고 사이트로 이사하기 위한 패키지입니다.

Project description

샘플 이미지

다음은 해당 패키지를 통해 티스토리 블로그를 이사하여 운영 중인 사이트의 샘플 이미지입니다.

샘플 사이트 : https://dstory.seolpyo.com/

티스토리 블로그 : https://white-seolpyo.tistory.com/

이미지 1

이미지 2

프로젝트 문의 / 제안

프로젝트와 관련한 내용은 설표의장고 게시판에 이야기해주시면 감사합니다.

프로젝트 설명

패키지명은 Django + Tistory를 합친 DSTORY(디스토리)로 명명했습니다.

프로젝트의 목적

백업파일을 이용하여 티스토리 블로그에 작성한 글들을 Django로 이전하여 운영할 수 있도록 합니다.

프로젝트 특징

  • 티스토리와 동일한 url 구조(숫자 주소 + 문자 주소 + rss + 사이트맵)를 사용합니다.
  • 태그, 카테고리, 공지사항, 서식, 페이지 정보를 가져올 수 있으며, 티스토리 블로그 로그인 정보를 이용해 임의로 설정한 문자 주소, 보호 글의 비밀번호 등의 정보도 가져올 수 있습니다.
  • 애드센스 코드 적용과 ads.txt 페이지를 손쉽게 할 수 있습니다.
  • Google Analytics 태그 추가를 쉽게 할 수 있습니다.
  • Google Tag Manager 태그 추가도 쉽게 할 수 있습니다.

사용방법

다음과 같이 ">>"으로 표현되는 명령어는 cmd.exe에 입력하는 명령어입니다. cmd.exe는 윈도우키 + R => cmd 를 실행하면 사용할 수 있습니다.

>> cmd.exe에 입력하는 명령어입니다.

패키지 설치

디스토리 패키지를 설치합니다.

tqdm, requests, bs4(BeautifulSoup), selenium, django, django-summenote 패키지가 함께 설치됩니다.

컴퓨터에 파이썬이 설치되지 않았다면 다음 글을 확인해주세요.

파이썬 설치방법

>> pip install seolpyo-dstory

장고 프로젝트 생성방법

C:/ 경로로 이동한 다음(리눅스인 경우 ~/), mysite라는 폴더를 생성하고, 폴더 안에 장고 프로젝트를 생성합니다.

>> cd C:/
>> mkdir mysite
>> cd mysite
>> django-admin startproject config .

기초 설정하기

  1. mysite > config 에 settings 폴더를 만든 다음, settings.py를 settings 폴더로 이동시킵니다.
  2. mysite > config > settigns 폴더에 __init__.py 를 만들고, 다음과 같이 작성합니다.

seolpyo_dsotry.settings 파일은 장고의 기초설정을 빠르게 하기 위해 작성된 파일입니다.

# config/settings/__init__.py
from .settings import *
from seolpyo_dstory.settings import *

BASE_DIR = BASE_DIR.parent
for i in apps:
  if i not in INSTALLED_APPS: INSTALLED_APPS.append(i)

TEMPLATES[0]['OPTIONS']['context_processors'].append(processor)
MEDIA_URL = 'media/'
MEDIA_ROOT = BASE_DIR / 'media'

# 애드센스 코드
DSTORY_CONTEXT['adsense'] = '' # ca-pub-123456789 => '123456789'
# 구글 애널리틱스 코드
DSTORY_CONTEXT['ga'] = '' # G-A1B2C3D4 => 'A1B2C3D4'
# 구글 태그매니저 코드
DSTORY_CONTEXT['gtm'] = '' # GTM-X1Y2Z3 => 'X1Y2Z3'
# 네이버 웹마스터도구 소유권 인증
DSTORY_NAVER = '' # naverA1B2C3D4E5F6G7H8I9.html => 'A1B2C3D4E5F6G7H8I9'

※ 별도의 이용자 모델이 있는 경우, AUTH_USER_MODEL 선언해주어야 합니다. 위 설정을 사용하면 'seolpyo_dstory.User'를 사용하게 됩니다.

urls.py 변경하기

mysite > config > urls.py를 열어 내용을 다음과 같이 변경합니다.

# config/urls.py
from django.conf import settings
from django.contrib import admin
from django.urls import path, include


urlpatterns = [
    path('admin/', admin.site.urls),
    path('summernote/', include('django_summernote.urls')),
    path('', include('seolpyo_dstory.urls')),
]

if not settings.DEBUG:
    handler400 = 'seolpyo_dstory.views.handler'
    handler403 = 'seolpyo_dstory.views.handler'
    handler404 = 'seolpyo_dstory.views.handler'
    handler500 = 'seolpyo_dstory.views.handler'

if settings.DEBUG:
    from django.conf.urls.static import static
    urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
    urlpatterns += static('media/', document_root=(settings.BASE_DIR / 'media/'))

마이그레이션

관리자를 추가하기 위해 마이그레이션을 생성하고, 적용합니다.

>> python manage.py makemigrations
>> python manage.py migrate

관리자 추가하기

티스토리 백업파일을 이용한 복구에는 관리자 계정이 필요합니다.

createsuperuser 명령을 통해 관리자를 추가합니다.

user 생성시 비밀번호를 입력하더라도 마스킹 문자(*)가 노출되지 않을 수 있습니다.

>> python manage.py createsuperuser

티스토리 백업파일을 이용해 글 복구하기

이 패키지는 티스토리 블로그 이사를 위한 2가지 방법을 제공합니다.

하나는 백업파일만을 이용한 단순 복구, 다른 하나는 백업파일과 티스토리 블로그에 접속해 공개설정, 비밀번호, 문자 주소 등의 정보를 가져와 적용하는 것입니다.

티스토리 백업파일은 글의 공개 여부나 보호글의 비밀번호, 임의로 설정한 문자 주소 정보를 제공하지 않습니다.

다운로드한 티스토리 백업파일을 mysite 폴더에 이동시킨 다음, tistory.zip이라는 이름으로 변경합니다.

백업파일을 통한 단순복구

장고 shell을 실행하고, 다음 명령어를 입력합니다. 임의로 설정한 문자 주소, 비밀 글 설정 등은 복구되지 않습니다. 백업파일에 해당 정보가 없기 때문입니다.

>> python manage.py shell
>> from seolpyo_dstory.utils import restore as r
>> r()

백업파일과 티스토리 블로그를 통한 복구

장고 shell을 실행하고, 다음 명령어를 입력합니다.

복구 과정에서 티스토리에 로그인하기 위한 로그인 아이디와 로그인 비밀번호를 요구합니다.

user 생성시와 마찬가지로 비밀번호 입력시 마스킹 문자(*)가 표시되지 않을 수 있습니다.

2단계 인증을 사용 중인 경우 로그인에 실패하기 때문에 2단계 인증을 사용하지 않는 계정이어야 합니다.

>> python manage.py shell
>> from seolpyo_dstory.utils import restore2 as r
>> r()

확인하기

장고 프로젝트를 실행하고, 복구된 글을 확인해봅니다.

로컬 서버에서 실행하는 경우 기본 주소는 http://127.0.0.1:8000입니다.

>> python manage.py runserver

그 외 설정들

여러 설정들을 만들고 적용할 수 있도록 했습니다.

디스토리 설정들과 장고 사이트 호스팅 관련 정보는 설표의장고에서 확인하실 수 있습니다.

디스토리 웹사이트 배포하기(운영 방법)

디스토리 패키지를 통해 서버에서 웹사이트를 운영하는 방법은 다음 링크에서 확인하실 수 있습니다.

디스토리 배포 방법 확인하러 가기

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

seolpyo_dstory-0.0.22.tar.gz (30.6 kB view details)

Uploaded Source

Built Distribution

seolpyo_dstory-0.0.22-py3-none-any.whl (37.7 kB view details)

Uploaded Python 3

File details

Details for the file seolpyo_dstory-0.0.22.tar.gz.

File metadata

  • Download URL: seolpyo_dstory-0.0.22.tar.gz
  • Upload date:
  • Size: 30.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.11

File hashes

Hashes for seolpyo_dstory-0.0.22.tar.gz
Algorithm Hash digest
SHA256 9b1b1c4a5d51ad62d80e347a1bfad8b58fbd3c2075e986e26f645a325293e4ad
MD5 5c32cd7f6e69316f93dfdd05b7441830
BLAKE2b-256 31f9a1b7ef04dcb445433d1e6a490e98dfb91c6c3380d26ef1b58309517060b5

See more details on using hashes here.

File details

Details for the file seolpyo_dstory-0.0.22-py3-none-any.whl.

File metadata

File hashes

Hashes for seolpyo_dstory-0.0.22-py3-none-any.whl
Algorithm Hash digest
SHA256 56fc979f6dad2c7779244c9181f6b97eb5b428f7ef726c9be7935cc71764d9a9
MD5 b8342b1ea97882f74c9013f1da8a698c
BLAKE2b-256 e0da97d75f294158f03773531ca3974069b16c509e0c8e83e3c52f1567303618

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page