diff --git a/batch/blog_latest.py b/batch/blog_latest.py new file mode 100644 index 0000000..373acaf --- /dev/null +++ b/batch/blog_latest.py @@ -0,0 +1,40 @@ +# TODO: autopep8 で整形したい +from typing import Literal +import json + + +class BlogLatest: + # TODO: .ini で保持したい + NOGI_BASE_URL: str = "https://blog.nogizaka46.com/" + SAKURA_BASE_URL: str = "https://sakurazaka46.com/" + HINATA_BASE_URL: str = "https://hinatazaka46.com/" + + def __init__( self, g_name ): + self.g_name: Literal[ "nogizaka", "sakurazaka", "hinatazaka" ] = g_name + self.save_path: Literal[ "imgs/nogi", "imgs/sakura", "imgs/hinata" ] = "imgs/" + g_name.replace( "zaka", "" ) + self.pic_base_url: Literal[ + "https://kokoichi0206.mydns.jp/imgs/blog/nogi", + "https://kokoichi0206.mydns.jp/imgs/blog/sakura", + "https://kokoichi0206.mydns.jp/imgs/blog/hinara" + ] = "https://kokoichi0206.mydns.jp/imgs/blog/" + g_name.replace( "zaka", "" ) + self.base_url: str = (self.NOGI_BASE_URL if g_name == "nogizaka" else + "{0}s/s46/diary/blog/list?ima=0000&ct=".format(self.SAKURA_BASE_URL) if g_name == "sakurazaka" else + "{0}s/official/diary/member/list?ima=0000&ct=".format(self.HINATA_BASE_URL)) + + self.headers = { "User-Agent": "Mozilla/5.0" } + + def get_scraping_images( self ): + with open("./batch/settings.json") as f: + infos: str = json.load(f)[ self.g_name ] + + for k, v in infos.items(): + print("{0}/{1}.jpg".format( self.pic_base_url, k )) + + def get_scraping_image( self, name: str, m_id: str ): + pass + + +if __name__ == "__main__": + # NOTE: CLI 実行であれば argparse 導入する + t = BlogLatest( "sakurazaka" ) + t.get_scraping_images() \ No newline at end of file diff --git a/batch/settings.json b/batch/settings.json new file mode 100644 index 0000000..79b6c1f --- /dev/null +++ b/batch/settings.json @@ -0,0 +1,106 @@ +{ + "nogizaka": { + "akimotomanatsu": { "generation": "1" }, + "ikutaerika": { "generation": "1" }, + "saitoasuka": { "generation": "1" }, + "takayamakazumi": { "generation": "1" }, + "higuchihina": { "generation": "1" }, + "hoshinominami": { "generation": "1" }, + "wadamaaya": { "generation": "1" }, + "itouriria": { "generation": "2" }, + "kitanohinako": { "generation": "2" }, + "shinuchimai": { "generation": "2" }, + "suzukiayane": { "generation": "2" }, + "teradaranze": { "generation": "2" }, + "yamazakirena": { "generation": "2" }, + "iwamotorenka": { "generation": "3" }, + "umezawaminami": { "generation": "3" }, + "kuboshiori": { "generation": "3" }, + "sakaguchitamami": { "generation": "3" }, + "satoukaede": { "generation": "3" }, + "nakamurareno": { "generation": "3" }, + "mukaihazuki": { "generation": "3" }, + "yamashitamizuki": { "generation": "3" }, + "yoshidaayanochristie": { "generation": "3" }, + "yodayuuki": { "generation": "3" }, + "endousakura": { "generation": "4" }, + "kakiharuka": { "generation": "4" }, + "kakehashisayaka": { "generation": "4" }, + "kanagawasaya": { "generation": "4" }, + "kitagawayuri": { "generation": "4" }, + "kuromiharuka": { "generation": "4" }, + "satourika": { "generation": "4" }, + "shibatayuna": { "generation": "4" }, + "seimiyarei": { "generation": "4" }, + "tamuramayu": { "generation": "4" }, + "tsutsuiayame": { "generation": "4" }, + "hayakawaseira": { "generation": "4" }, + "hayashiruna": { "generation": "4" }, + "matsuomiyu": { "generation": "4" }, + "yakubomio": { "generation": "4" }, + "yumikinao": { "generation": "4" } + }, + "sakurazaka": { + "uemurarina": { "id": "03", "generation": "1" }, + "ozekirika": { "id": "04", "generation": "1" }, + "koikeminami": { "id": "06", "generation": "1" }, + "kobayashiyui": { "id": "07", "generation": "1" }, + "saitoufuyuka": { "id": "08", "generation": "1" }, + "sugaiyuuka": { "id": "11", "generation": "1" }, + "habumizuho": { "id": "14", "generation": "1" }, + "haradaaoi": { "id": "15", "generation": "1" }, + "moriyaakane": { "id": "18", "generation": "1" }, + "watanaberika": { "id": "20", "generation": "1" }, + "watanaberisa": { "id": "21", "generation": "1" }, + "inouerina": { "id": "43", "generation": "2" }, + "endouhikari": { "id": "53", "generation": "2" }, + "oozonorei": { "id": "54", "generation": "2" }, + "oonumaakiho": { "id": "55", "generation": "2" }, + "kousakamarino": { "id": "56", "generation": "2" }, + "sekiyumiko": { "id": "44", "generation": "2" }, + "takemotoyui": { "id": "45", "generation": "2" }, + "tamurahono": { "id": "46", "generation": "2" }, + "fujiyoshikarin": { "id": "47", "generation": "2" }, + "masumotokira": { "id": "57", "generation": "2" }, + "matsudarina": { "id": "48", "generation": "2" }, + "moritahikaru": { "id": "50", "generation": "2" }, + "moriyarena": { "id": "58", "generation": "2" }, + "yamasakiten": { "id": "51", "generation": "2" } + }, + "hinatazaka": { + "ushiosarina": { "id": "2", "generation": "1" }, + "kageyamayuuka": { "id": "4", "generation": "1" }, + "katoushiho": { "id": "5", "generation": "1" }, + "saitoukyouko": { "id": "6", "generation": "1" }, + "sasakikumi": { "id": "7", "generation": "1" }, + "sasakimirei": { "id": "8", "generation": "1" }, + "takasemana": { "id": "9", "generation": "1" }, + "takamotoayaka": { "id": "10", "generation": "1" }, + "higashimuramei": { "id": "11", "generation": "1" }, + "kanemuramiku": { "id": "12", "generation": "2" }, + "kawatahina": { "id": "13", "generation": "2" }, + "kosakanao": { "id": "14", "generation": "2" }, + "tomitasuzuka": { "id": "15", "generation": "2" }, + "nibuakari": { "id": "16", "generation": "2" }, + "hamagishihiyori": { "id": "17", "generation": "2" }, + "matsudakonoka": { "id": "18", "generation": "2" }, + "miyatamanamo": { "id": "19", "generation": "2" }, + "watanabemiho": { "id": "20", "generation": "2" }, + "kamimurahinano": { "id": "21", "generation": "3" }, + "takahashimikuni": { "id": "22", "generation": "3" }, + "morimotomarii": { "id": "23", "generation": "3" }, + "yamaguchiharuyo": { "id": "24", "generation": "3" }, + "ishizukatamaki": { "id": "25", "generation": "4" }, + "kishihonoka": { "id": "26", "generation": "4" }, + "konishinanami": { "id": "27", "generation": "4" }, + "shimizurio": { "id": "28", "generation": "4" }, + "shogengiyoko": { "id": "29", "generation": "4" }, + "takeuchikirari": { "id": "30", "generation": "4" }, + "hiraohonoka": { "id": "31", "generation": "4" }, + "hiraokamitsuki": { "id": "32", "generation": "4" }, + "hujishimakaho": { "id": "33", "generation": "4" }, + "miyachisumire": { "id": "34", "generation": "4" }, + "yamashitaharuka": { "id": "35", "generation": "4" }, + "watanaberina": { "id": "36", "generation": "4" } + } +}