あったまる Twitter Bot

https://github.com/hackz-hackathon-ankylo/team-Staricemountain-2

Django

Python

MySQL

Azure

GitHub

intの限界まであったまろう!!!

稲岡天駿

推しアイデア

毎日温度があったまっていきます. 冬は寒いのでマイナスになることもありますが,夏に稼いだ気温で寒い冬も乗り越えよう!!!

作った背景

Twitter Bot作りたかった. Azureを触ってみたかった!? そしてあったまりたかった!!!

推し技術

・Azure ロジックアプリ ・DjangoでAPIを自作 ・Google Cloud Platform

プロジェクト詳細

We are Staricemountain

僕たちは,ハックツハッカソン アンキロカップのチーム Staricemountain です.名前が長いと文句を言われたので,名前の由来について語ります.僕たちStaricemoutainは,星野(star),稲岡(rice),山岡(mountain)の3人チームです.もうお気づきだと思いますが,3人の苗字の英語を合わせた名前です.

To ハックツさん ながい名前ですが,ちゃんと深い意味が込められているので,ちゃんと覚えてください. by Staricemountain

技術

Azure

今回は,Twitter Botを作りたかったので,当初,Twitter APIを触っていましたが,デプロイをAzureにしようと思い,Azureについてメンターさんに尋ねると,コードを書かなくてもTwitter Botを作れる事が判明しました. 下の写真がコードを書かなくてプログラムを作れるAzureのロジックアプリです.

スクリーンショット 20211219 11.38.53.png

スクリーンショット 20211219 11.19.51.png スクリーンショット 20211219 11.20.06.png スクリーンショット 20211219 11.20.19.png スクリーンショット 20211219 11.20.32.png

Django

上記のツイートBotで何を呟くか中身の部分です.

Django API(自作アプリ)にアクセスすると,jsonデータを取得できます. 中の処理は以下のプログラムの様に,ツイートをする関数と温度を計算する関数が書かれています.

def tweet(request): temp_data = weather.get() total = calculate_total(temp_data.max_temp) # DBに登録する。 Temperatures.objects.create( city=temp_data.city_name, max_temp = temp_data.max_temp, min_temp = temp_data.min_temp, total=total ) # 温度のデータをとってくる hotdata = data.hot(total) # 画像のURLを取ってくる picture_keyword = hotdata.word # レスポンス response = JsonResponse({}) response.headers = {"Content-Type": "application/json; charset=utf-8"} response.content = json.dumps({ "city": temp_data.city_name, "max_temp": temp_data.max_temp, "min_temp": temp_data.min_temp, "total": round(total, 2), "message": hotdata.message, "thumnail_url": picture.get(picture_keyword), }, ensure_ascii=False) return response def calculate_total(add_temp): if (Temperatures.objects.exists == False): return add_temp current_total = Temperatures.objects.latest('created_at').total return current_total + add_temp

稲岡天駿

@takatoshiinaoka