前提・実現したいこと
こんばんは。プログラミング初心者です。皆様のお力をお借りできないでしょうか。
LINEのボットを作ろうとしており、python+Flaskにて下記のリンクのプログラムを再現しようとしています。
https://engineering.linecorp.com/ja/blog/imezimatsupumetsuseziwoshi-tsutezhong-dian-nicheng-richi-renaibotsutowozuo-rimashita/
このうち、「イメージマップメッセージを送信してみる」を再現しようとしているのですが、途中にあるrequest.hostに問題があるようで、同様のコードをjupyter notebookで打ち込んだところ、下記エラーが出現してしまい先に進めません。
発生している問題・エラーメッセージ
RuntimeError: Working outside of request context. This typically means that you attempted to use functionality that needed an active HTTP request. Consult the documentation on testing for information about how to avoid this problem.
該当のソースコード
python
1import flask 2from flask import Flask, request, abort 3import urllib.parse 4 5google_staticmaps_api_key="MY API KEY" 6 7IMAGE_SIZE = 640 8 9def makeMapUlr(input_place): 10 map_image_url = 'https://maps.googleapis.com/maps/api/staticmap?markers=color:{}|{}¢er={}&zoom=15&language=jp&size={}x{}&key={}'.format('blue', urllib.parse.quote(input_place), urllib.parse.quote(input_place),IMAGE_SIZE, IMAGE_SIZE, google_staticmaps_api_key) 11 return map_image_url 12 13def makeImagemapSendMessage(map_image_url): 14 request_host_name = request.host 15 with app.test_request_context(): 16 from flask import request 17 request = req 18 base_url = 'https://{}/imagemap/{}'.format(request_host_name, urllib.parse.quote_plus(map_image_url)) 19 print(base_url) 20 21url = makeMapUlr(address) 22makeImagemapSendMessage(url)
試したこと
https://qiita.com/youwht/items/014aa6e69657c5070593
上記を拝見しました。
補足情報(FW/ツールのバージョンなど)
python 3.7.4
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。