pythonのお勉強:htmlからの受信データ
htmlから、どんなデータが受信されるのでしょうか?ブラウザ側クライアントwebブラウザで日本語が扱えない場合 urlエンコードされているデコード リンク上記サイトでデコードした結果サーバー側の受信データdate=2020%2F05%2F15&name=%E5%A4%AA%E9%83%8E&weather=%E6%9B%87%E3%82%8A&kind=%E3%83%A1%E3%83%A2&match_word=&action=add&Contents=%E3%82%B9%E3%83%86%E3%82%A4%E3%83%9B%E3%83%BC%E3%83%A0%E4%B8%AD%E3%81%A7%E3%81%99python側でURLデコードと辞書変換されて以下となっているNestedMultiDict([('date', '2020/05/15'), ('name', '太郎'), ('weather', '曇り'), ('kind', 'メモ'), ('match_word', ''), ('action', 'add'), ('Contents', 'ステイホーム中です')])URLデコードとは、URLで使っちゃいけない文字を別の表現に置き換えていたのを元に戻すこと。 MultiDictのgoogle翻訳WebObのいくつかの部分は、「multidict」を使用します。これは、キーが複数の値を持つことができる辞書です。典型的な例は、?pref = red&pref = blueのようなクエリ文字列です。 pref変数には、赤と青の2つの値があります。multidictでは、request.GET ['pref']を実行すると、 'blue'(prefの最後の値)のみが返されます。文字列を返すこともあれば、リストを返すこともあるので、例外が頻繁に発生します。すべての値を戻したい場合は、request.GET.getall( 'pref')を使用します。値が1つだけであることを確認する場合は、request.GET.getone( 'pref')を使用します。これにより、prefの値がゼロまたは複数の場合に例外が発生します。request.GET.items()などの操作を使用すると、[( 'pref'、 'red')、( 'pref'、 'blue')]のようなものが返されます。すべてのキーと値のペアが表示されます。同様に、request.GET.keys()は['pref'、 'pref']を返します。 Multidictはタプルのリストのビューです。すべてのキーが順序付けられ、すべての値が順序付けられます。複数値辞書オブジェクト(MultiDict)といくつかのラッパーを提供します要するに、サーバー側は、webフォームからのurlエンコードされた辞書が受信されるってことです。urlエンコードとはクライアント サーバー間で使えない文字があり それを回避するための法式です。USED【送料無料】インターネットプログラミング—UNIXクライアント サーバーアプリケーションの基本とWinSock (Internet Programming Technique) コアダンプ