파이썬으로 오로라 전천 이미지 수집

소개



연구실 후배가 CNN을 사용한 이미지 분류 연습을 하는 것 같고, 거기에 이용하는 오로라 전천 이미지의 수집을 명령받았다.

오로라 전천 이미지



전천 화상과는 상공 180도, 주위 360도를 촬영한 화상. 여기에 오로라를 찍은 다음과 같은 이미지가 오로라 전천 이미지.
htp // rdlys. 에 pr. 아 c. jp/아카우로라/쇼와 보다 인용
오로라 전천 화상을 공개하고 있는 사이트는 몇 개 있습니다만, 이번은 국립극지 연구소가 공개하는 남극 쇼와 기지에서 촬영된 화상을 수집합니다.

구현 개요



이미지는 지정된 날짜의 모든 것을 수집하도록 구현됩니다.
언어는 파이썬이며 다음 기능을 구현합니다.
· 지정된 날짜의 일별 아카이브 페이지 사이트에 액세스
· 사이트의 HTML을 간이 해석해 a 태그에 포함되는 href 속성내의 이미지 URL을 꺼낸다
· 이미지 URL에 액세스하여 이미지를 PC의 지정된 디렉토리에 저장

프로그램



해설은 나중에 최선을 다할 것입니다 .... 우선 공개
import requests, os, bs4, urllib.request

#南極昭和基地が画像を公開するサイトのトップページURL
URL = "http://nordlys.nipr.ac.jp/acaurora/Syowa"

#画像を収集したい日付を指定
#2018年3月17日について収集したければ以下のようにする
Date = str(20180317)

#画像を保存するディレクトリパスの指定
#~の部分は任意で構いません、~以降の部分は以下のようにしてください
Dir_path = "C:/~/acaurora/Syowa/photo/"

#指定した日付に対し24時間分の画像を得るためのループ
for i in range(24):
    for j in range(6):
        #時間を4桁で指定、4桁に満たない場合は左端を0で埋める
        #例)11時:1100 -> 1100, 3時:300 -> 0300
        time = str(i*100 + j*10).zfill(4)
        #画像をダウンロードするディレクトリのパスの指定
        DL_dir_path = Dir_path + Date + "/" + Date + time
        #ディレクトリがなければ作成
        if(os.path.exists(DL_dir_path)==False):
            os.mkdir(DL_dir_path)
        #ダウンロードしたい画像がアーカイブされたページのURLを指定
        ArchiveURL = URL + "/photo/" + Date + "/" + Date + time + "/"
        #アーカイブページを取得
        res = requests.get(ArchiveURL)
        #beautifulsoupを使って取得したページの解析準備
        soup = bs4.BeautifulSoup(res.text, "html.parser")
        Prefix = "http://nordlys.nipr.ac.jp"
        Suffix = []
        for a in soup.find_all('a'):
            Suffix.append(a.get('href'))
        # Download Images from link URL
        for j in range(len(Suffix) - 1):
            DLink = Prefix + Suffix[j]
            title = DLink[69:87]
            print(title)
            title = DIR + "/" + title
            print(title)

            urllib.request.urlretrieve(DLink, "{0}".format(title))

좋은 웹페이지 즐겨찾기