스크래핑: 웹사이트를 로컬로 저장

스크래핑: 웹사이트를 로컬로 저장



비망록. 백업 목적만.
태양 전자파? 태양 자기 폭풍? 같은 세계적인 정전에 대비. microCMS에는 백업 기능이 없기 때문에 실시.

코드


import os
from urllib.request import *

# 記事カテゴリー毎のURL
#base_url = "https://benzoinfojapan.org/patients-article/"
#base_url = "https://benzoinfojapan.org/doctors-article/"
base_url = "https://benzoinfojapan.org/medias-article/"

# 保存先ファイル名接頭詞
#prefix = "patients-article"
#prefix = "doctors-article"
prefix = "medias-article"

num = 1

# 各カテゴリ記事上限値をwhile num <= Xに設定. 以下2020年10月現在値.
# patientsの場合10
# patientsの場合26
# patientsの場合13
#       ↓↓
while num <= 13:
    print("ダウンロード開始")

    # HTMLファイル 保存先のディレクトリ
    save_dir = os.path.dirname(os.path.abspath(__file__)) + "/html/"
    # 存在しなければディレクトリ作成
    if not os.path.exists(save_dir): 
        os.mkdir(save_dir)

    url=base_url + str(num)

    # 保存先ファイルのパス
    num_str = str(num)
    save_file = save_dir + prefix + num_str + ".html"

    urlretrieve(url, save_file)

    # doctors-articleの記事が22番目抜けてるので必要な処理^^;
    if num != 11:
        num += 1
    else:
        num += 2

※ 에러 처리 없음

사용법



세 가지 범주별로 매개변수를 변경하여 위의 코드를 세 번 실행합니다.

변경 개소는 이하만.
  • base_url
  • prefix
  • while num <= xx: ← xx의 수치를 현재 총 기사수에.

  • 결과



    페이지 당 HTML 파일로 로컬 드라이브에 저장됩니다.


    이상.

    좋은 웹페이지 즐겨찾기