連載 7 : pythonとhtmlの連動
『 htmlとcssとpythonの合体 』
入力用フォームと出力用フォームの、html、cssをpythonに読み込む。
ファイル名は、mane.pyにする。
ごめんなさい。少し長いコードになりますが。
def get_date(): import datetime now = datetime.datetime.now() today = str(now.month)+ "月" + str(now.day) + "日" youbi = ["(月)","(火)","(水)","(木)","(金)","(土)","(日)"] date = datetime.date(now.year,now.month,now.day) youbi = youbi[date.weekday()] today += youbi return today date = get_date() import cgi form = cgi.FieldStorage() name = form.getvalue("name","") meal = " " + form.getvalue("meal","") menu1 = form.getvalue("menu1","") menu2 = form.getvalue("menu2","") menu3 = form.getvalue("menu3","") menu4 = form.getvalue("menu4","") menu5 = form.getvalue("menu5","") menu6 = form.getvalue("menu6","") import random img_num = random.randint(1, 12) html = """ <!DOCTYPE html> <html> <head> <title>あおぞら献立</title> <style> @page { size: A4; magin:10mm; } @media print { body { width: 190mm; } } body { border: 2px solid black; width: 210mm; height: 148mm; padding-right: 50px; padding-left:50px; } h1 { font-family: Georgia, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiriyo, serif; font-size: 60px; text-align: center; margin-top: 10px; margin-bottom: 0; padding-bottom: 0; } h2 { font-size: 35px; text-align: center; padding: 0; margin: 0; } h3 { font-size: 35px; margin: 0; } p { font-size: 25px; margin: 2px; } img { position: absolute; top: 200px; left: 600px; width: 250px; height: 250px; } #aozorasakura { font-size: 30px; margin-top: 30px; } #tyuuigaki { font-size: 20px; } </style> </head> <body> <h1>%s 様</h1> <h2>%s<span style="color:yellow">%s</span> <h3>本日の献立</h3> <p>①%s</p> <p>②%s</p> <p>③%s</p> <p>④%s</p> <p>⑤%s</p> <p>⑥%s</p> <img src="/images/image%s.jpg" alt="image"> <p id="aozorasakura"> <span style="color: red">あ</span> <span style="color: orange">お</span> <span style="color: yellow">ぞ</span> <span style="color: green">ら</span> <span style="color: magenta">さくら</span> <span style="color: blue">弁当</span> TEL 099-230-7895 </p> <p id="tyuuigaki">※仕入れ状況により、献立・食材が変更する場合がございます。</p> </body> </html> """ html = html % (name, date, meal, menu1, menu2, menu3, menu4, menu5, menu6, img_num) print("Content-type: text/html\n") print(html)
忘れない為にメモです。
【def get_date():】自動で曜日を取得
【name = form.getvalue("name","")】 ” ” の中には大元値が反映される。値がなければNONEが
表示、その他に「値がありませ」などの文字入力も可能
【画像のランダム表示】
ごめんなさい、これは言葉が成り立っていませんが、私の忘れない為の走り書きメモ
【%s】には変数が入る サイトアドレスに表示されるクエリー、?を拾って変数に入れるイメージ