質問編集履歴

25 誤字修正

jazzwalker

jazzwalker score 17

2019/03/24 12:23  投稿

Web上での表示がうまく行っていません。出るはずの数値が表示されてきません。
### 前提・実現したいこと
センサータグ(TI製)を用い温度等を測定、ラズパイをサーバーにして、測定されたデータをWeb上で閲覧する。redisを用いています。
### 発生している問題・エラーメッセージ
エラーは出ていません。
測定自体はされています。
Web上での表示がうまく行っていません。
![ここまでの表示は出ています](04da69af96d3c2965d4adb014a4881f0.jpeg)
上に画面を添付しましたが、文字は表示されるものの、出るはずの数値が表示されてきていません。また入力窓も表示されませんので、その先の作業(グラフ表示)に進めません。
最後のprint文に問題がありそうに思い、手直しを試みましたが、うまく行きませんでした。
### 該当のソースコード
```Python
#!/usr/bin/python3
# coding: utf-8
import redis
html_body = """
<!DOCTYPE html>
<html>
<head>
   <meta http-equiv="content-type" content="text/html;charset=utf-8">
   <title>SensorTag List</title>
   <style type="text/css">
       body {
           font-family: Verdana, Arial;
           font-size: 16px;
           background: #ffffff;
       }
       input {
           font-size: 100%%;
           text-align: center;
       }
   </style>
</head>
<body>
<div>
 <h1 style="text-align: center;">SensorTagリスト</h1>
 <table style="margin: 0 auto;" border="0" cellpadding="10">
   <thead>
     <tr>
       <th style="width: 200px;">センサー</th>
       <th>rssi</th>
       <th>電源ボタン</th>
       <th style="width: 100px;">チャネルID</th>
       <th style="width: 200px;">ライトキー</th>
       <th style="width: 100px;">設定</th>
     </tr>
   </thead>
   <tbody>
   %s
   </tbody>
 </table>
</div>
</body></html>"""
r = redis.StrictRedis(host='localhost', port=6379)
addrs = list(k.decode('utf-8') for k in r.keys())
ttemplate = '<form method="POST" action="result.py"><input type="hidden" name="addr" value="%s"><tr><td align="center">%s</td><td align="right">%s</td><td align="center">%s</td><td><input type="number" name="ch" value="%s"></td><td><input type="text" name="writekey" value="%s"></td><td align="center"><input type="submit" value="設定"></td></tr></form>'
tbody = ''
for addr in addrs:
   d = r.hgetall(addr)
   dd = dict([(k.decode('utf-8'), v.decode('utf-8')) for k, v in d.items()])
   ch = dd.get('ch', '')
   if ch == 'None': ch = ''
   writekey = dd.get('writekey', '')
   if writekey == 'None': writekey = ''
   button = dd.get('button', '')
   if button == 'None' or button == '': button = '-'
   tbody += ttemplate % (addr, addr, dd.get('rssi'), button, ch, writekey)
print('Content-type: text/html\r\n')
print(html_body % tbody)
```
以下のこちらもご覧ください。
#!/usr/bin/python3
# coding: utf-8
import cgi
import redis
import cgitb
cgitb.enable()
html_body = """
<!DOCTYPE html>
<html>
<head>
   <meta http-equiv="content-type" content="text/html;charset=utf-8">
   <title>SensorTag List</title>
</head>
<body>
<div>
 <h1 style="text-align: center;">SensorTagリスト</h1>
 <meta http-equiv="refresh" content="0; URL='sensortaglist.py'" />
</html>"""
r = redis.StrictRedis(host='localhost', port=6379)
print('Content-type: text/html\r\n')
print(html_body)
form=cgi.FieldStorage()
addr = form.getvalue('addr')
ch = form.getvalue('ch')
writekey = form.getvalue('writekey')
if addr:
   r.hmset(addr, {'ch': ch, 'writekey': writekey, 'button': 'None'})
### 試したこと
ダメ元で、下から2行目のprint文中のバックスラッシュを、¥に変えてみましたが、結果は変わらずでした。
**/etc/init.d/redis-server start にて、redis を起動させた場合においても、うまく行きませんでした。**
### 補足情報(FW/ツールのバージョンなど)
Python初心の者です。アドバイスの程、よろしくおねがいいたします。
実はメインプログラムは別にありまして、それを実行させることで、データ取得後、web閲覧が可能になる仕組みです。cgi-bin下に置いた、ここに挙げたプログラムを使っていると判断し、開示させていただきました。メイン・プログラムもここに開示出来れば良いのですが、字数制限に引っかかってしまいます(st2ambient2.py で検索することができます)。お恥ずかしい次第ですが、メインプログラムから、当該プログラム(CGI?)への繋がり方がよく分かっておりません。アドバイスあればお願いいたします。
追記
  • Python

    35772 questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

  • Redis

    215 questions

    Redisは、オープンソースのkey-valueデータストアで、NoSQLに分類されます。すべてのデータをメモリ上に保存するため、処理が極めて高速です。

24 追記

jazzwalker

jazzwalker score 17

2019/03/23 19:53  投稿

Web上での表示がうまく行っていません。出るはずの数値が表示されてきません。
### 前提・実現したいこと
センサータグ(TI製)を用い温度等を測定、ラズパイをサーバーにして、測定されたデータをWeb上で閲覧する。redisを用いています。
### 発生している問題・エラーメッセージ
エラーは出ていません。
測定自体はされています。
Web上での表示がうまく行っていません。
![ここまでの表示は出ています](04da69af96d3c2965d4adb014a4881f0.jpeg)
上に画面を添付しましたが、文字は表示されるものの、出るはずの数値が表示されてきていません。また入力窓も表示されませんので、その先の作業(グラフ表示)に進めません。
最後のprint文に問題がありそうに思い、手直しを試みましたが、うまく行きませんでした。
### 該当のソースコード
```Python
#!/usr/bin/python3
# coding: utf-8
import redis
html_body = """
<!DOCTYPE html>
<html>
<head>
   <meta http-equiv="content-type" content="text/html;charset=utf-8">
   <title>SensorTag List</title>
   <style type="text/css">
       body {
           font-family: Verdana, Arial;
           font-size: 16px;
           background: #ffffff;
       }
       input {
           font-size: 100%%;
           text-align: center;
       }
   </style>
</head>
<body>
<div>
 <h1 style="text-align: center;">SensorTagリスト</h1>
 <table style="margin: 0 auto;" border="0" cellpadding="10">
   <thead>
     <tr>
       <th style="width: 200px;">センサー</th>
       <th>rssi</th>
       <th>電源ボタン</th>
       <th style="width: 100px;">チャネルID</th>
       <th style="width: 200px;">ライトキー</th>
       <th style="width: 100px;">設定</th>
     </tr>
   </thead>
   <tbody>
   %s
   </tbody>
 </table>
</div>
</body></html>"""
r = redis.StrictRedis(host='localhost', port=6379)
addrs = list(k.decode('utf-8') for k in r.keys())
ttemplate = '<form method="POST" action="result.py"><input type="hidden" name="addr" value="%s"><tr><td align="center">%s</td><td align="right">%s</td><td align="center">%s</td><td><input type="number" name="ch" value="%s"></td><td><input type="text" name="writekey" value="%s"></td><td align="center"><input type="submit" value="設定"></td></tr></form>'
tbody = ''
for addr in addrs:
   d = r.hgetall(addr)
   dd = dict([(k.decode('utf-8'), v.decode('utf-8')) for k, v in d.items()])
   ch = dd.get('ch', '')
   if ch == 'None': ch = ''
   writekey = dd.get('writekey', '')
   if writekey == 'None': writekey = ''
   button = dd.get('button', '')
   if button == 'None' or button == '': button = '-'
   tbody += ttemplate % (addr, addr, dd.get('rssi'), button, ch, writekey)
print('Content-type: text/html\r\n')
print(html_body % tbody)
```
以下のこちらもご覧ください。
#!/usr/bin/python3
# coding: utf-8
import cgi
import redis
import cgitb
cgitb.enable()
html_body = """
<!DOCTYPE html>
<html>
<head>
   <meta http-equiv="content-type" content="text/html;charset=utf-8">
   <title>SensorTag List</title>
</head>
<body>
<div>
 <h1 style="text-align: center;">SensorTagリスト</h1>
 <meta http-equiv="refresh" content="0; URL='sensortaglist.py'" />
</html>"""
r = redis.StrictRedis(host='localhost', port=6379)
print('Content-type: text/html\r\n')
print(html_body)
form=cgi.FieldStorage()
addr = form.getvalue('addr')
ch = form.getvalue('ch')
writekey = form.getvalue('writekey')
if addr:
   r.hmset(addr, {'ch': ch, 'writekey': writekey, 'button': 'None'})
### 試したこと
ダメ元で、下から2行目のprint文中のバックスラッシュを、¥に変えてみましたが、結果は変わらずでした。
**/etc/init.d/redis-server start にて、redis を起動させた場合においても、うまく行きませんでした。**
### 補足情報(FW/ツールのバージョンなど)
Python初心の者です。アドバイスの程、よろしくおねがいいたします。
実はメインプログラムは別にありまして、それを実行させることで、データ取得後、web閲覧が可能になる仕組みです。cgi-bin下に置いた、ここに挙げたプログラムを使っていると判断し、開示させていただきました。メイン・プログラムもここに開示出来れば良いのですが、字数制限に引っかかってしまいます(st2ambient2.py で検索することができます)。お恥ずかしい次第ですが、メインプログラムから、当該プログラム(CGI?)への繋がり方がよく分かっておりません。アドバイスあればお願いいたします。
実はメインプログラムは別にありまして、それを実行させることで、データ取得後、web閲覧が可能になる仕組みです。cgi-bin下に置いた、ここに挙げたプログラムを使っていると判断し、開示させていただきました。メイン・プログラムもここに開示出来れば良いのですが、字数制限に引っかかってしまいます(st2ambient2.py で検索することができます)。お恥ずかしい次第ですが、メインプログラムから、当該プログラム(CGI?)への繋がり方がよく分かっておりません。アドバイスあればお願いいたします。
追記
もうひとつ、Web表示に関係したプログラムがありましたので、出しておきます。
  • Python

    35772 questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

  • Redis

    215 questions

    Redisは、オープンソースのkey-valueデータストアで、NoSQLに分類されます。すべてのデータをメモリ上に保存するため、処理が極めて高速です。

23 プログラムの追記

jazzwalker

jazzwalker score 17

2019/03/23 09:08  投稿

Web上での表示がうまく行っていません。出るはずの数値が表示されてきません。
### 前提・実現したいこと
センサータグ(TI製)を用い温度等を測定、ラズパイをサーバーにして、測定されたデータをWeb上で閲覧する。redisを用いています。
### 発生している問題・エラーメッセージ
エラーは出ていません。
測定自体はされています。
Web上での表示がうまく行っていません。
![ここまでの表示は出ています](04da69af96d3c2965d4adb014a4881f0.jpeg)
上に画面を添付しましたが、文字は表示されるものの、出るはずの数値が表示されてきていません。また入力窓も表示されませんので、その先の作業(グラフ表示)に進めません。
最後のprint文に問題がありそうに思い、手直しを試みましたが、うまく行きませんでした。
### 該当のソースコード
```Python
#!/usr/bin/python3
# coding: utf-8
import redis
html_body = """
<!DOCTYPE html>
<html>
<head>
   <meta http-equiv="content-type" content="text/html;charset=utf-8">
   <title>SensorTag List</title>
   <style type="text/css">
       body {
           font-family: Verdana, Arial;
           font-size: 16px;
           background: #ffffff;
       }
       input {
           font-size: 100%%;
           text-align: center;
       }
   </style>
</head>
<body>
<div>
 <h1 style="text-align: center;">SensorTagリスト</h1>
 <table style="margin: 0 auto;" border="0" cellpadding="10">
   <thead>
     <tr>
       <th style="width: 200px;">センサー</th>
       <th>rssi</th>
       <th>電源ボタン</th>
       <th style="width: 100px;">チャネルID</th>
       <th style="width: 200px;">ライトキー</th>
       <th style="width: 100px;">設定</th>
     </tr>
   </thead>
   <tbody>
   %s
   </tbody>
 </table>
</div>
</body></html>"""
r = redis.StrictRedis(host='localhost', port=6379)
addrs = list(k.decode('utf-8') for k in r.keys())
ttemplate = '<form method="POST" action="result.py"><input type="hidden" name="addr" value="%s"><tr><td align="center">%s</td><td align="right">%s</td><td align="center">%s</td><td><input type="number" name="ch" value="%s"></td><td><input type="text" name="writekey" value="%s"></td><td align="center"><input type="submit" value="設定"></td></tr></form>'
tbody = ''
for addr in addrs:
   d = r.hgetall(addr)
   dd = dict([(k.decode('utf-8'), v.decode('utf-8')) for k, v in d.items()])
   ch = dd.get('ch', '')
   if ch == 'None': ch = ''
   writekey = dd.get('writekey', '')
   if writekey == 'None': writekey = ''
   button = dd.get('button', '')
   if button == 'None' or button == '': button = '-'
   tbody += ttemplate % (addr, addr, dd.get('rssi'), button, ch, writekey)
print('Content-type: text/html\r\n')
print(html_body % tbody)
```
以下のこちらもご覧ください。  
 
#!/usr/bin/python3  
# coding: utf-8  
 
import cgi  
import redis  
import cgitb  
cgitb.enable()  
 
html_body = """  
<!DOCTYPE html>  
<html>  
<head>  
   <meta http-equiv="content-type" content="text/html;charset=utf-8">  
   <title>SensorTag List</title>  
</head>  
<body>  
<div>  
 <h1 style="text-align: center;">SensorTagリスト</h1>  
 <meta http-equiv="refresh" content="0; URL='sensortaglist.py'" />  
</html>"""  
 
r = redis.StrictRedis(host='localhost', port=6379)  
 
print('Content-type: text/html\r\n')  
print(html_body)  
 
form=cgi.FieldStorage()  
addr = form.getvalue('addr')  
ch = form.getvalue('ch')  
writekey = form.getvalue('writekey')  
if addr:  
   r.hmset(addr, {'ch': ch, 'writekey': writekey, 'button': 'None'})  
 
 
### 試したこと
ダメ元で、下から2行目のprint文中のバックスラッシュを、¥に変えてみましたが、結果は変わらずでした。
**/etc/init.d/redis-server start にて、redis を起動させた場合においても、うまく行きませんでした。**
### 補足情報(FW/ツールのバージョンなど)
Python初心の者です。アドバイスの程、よろしくおねがいいたします。
実はメインプログラムは別にありまして、それを実行させることで、データ取得後、web閲覧が可能になる仕組みです。cgi-bin下に置いた、ここに挙げたプログラムを使っていると判断し、開示させていただきました。メイン・プログラムもここに開示出来れば良いのですが、字数制限に引っかかってしまいます(st2ambient2.py で検索することができます)。お恥ずかしい次第ですが、メインプログラムから、当該プログラム(CGI?)への繋がり方がよく分かっておりません。アドバイスあればお願いいたします。
  • Python

    35772 questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

  • Redis

    215 questions

    Redisは、オープンソースのkey-valueデータストアで、NoSQLに分類されます。すべてのデータをメモリ上に保存するため、処理が極めて高速です。

22 文章修正

jazzwalker

jazzwalker score 17

2019/03/21 10:55  投稿

Web上での表示がうまく行っていません。出るはずの数値が表示されてきません。
### 前提・実現したいこと
センサータグ(TI製)を用い温度等を測定、ラズパイをサーバーにして、測定されたデータをWeb上で閲覧する。redisを用いています。
### 発生している問題・エラーメッセージ
エラーは出ていません。
測定自体はされています。
Web上での表示がうまく行っていません。
![ここまでの表示は出ています](04da69af96d3c2965d4adb014a4881f0.jpeg)
上に画面を添付しましたが、出るはずの数値が表示されてきていません。また入力窓も表示されませんので、その先の作業(グラフ表示)に進めません。
上に画面を添付しましたが、文字は表示されるものの、出るはずの数値が表示されてきていません。また入力窓も表示されませんので、その先の作業(グラフ表示)に進めません。
最後のprint文に問題がありそうに思い、手直しを試みましたが、うまく行きませんでした。
### 該当のソースコード
```Python
#!/usr/bin/python3
# coding: utf-8
import redis
html_body = """
<!DOCTYPE html>
<html>
<head>
   <meta http-equiv="content-type" content="text/html;charset=utf-8">
   <title>SensorTag List</title>
   <style type="text/css">
       body {
           font-family: Verdana, Arial;
           font-size: 16px;
           background: #ffffff;
       }
       input {
           font-size: 100%%;
           text-align: center;
       }
   </style>
</head>
<body>
<div>
 <h1 style="text-align: center;">SensorTagリスト</h1>
 <table style="margin: 0 auto;" border="0" cellpadding="10">
   <thead>
     <tr>
       <th style="width: 200px;">センサー</th>
       <th>rssi</th>
       <th>電源ボタン</th>
       <th style="width: 100px;">チャネルID</th>
       <th style="width: 200px;">ライトキー</th>
       <th style="width: 100px;">設定</th>
     </tr>
   </thead>
   <tbody>
   %s
   </tbody>
 </table>
</div>
</body></html>"""
r = redis.StrictRedis(host='localhost', port=6379)
addrs = list(k.decode('utf-8') for k in r.keys())
ttemplate = '<form method="POST" action="result.py"><input type="hidden" name="addr" value="%s"><tr><td align="center">%s</td><td align="right">%s</td><td align="center">%s</td><td><input type="number" name="ch" value="%s"></td><td><input type="text" name="writekey" value="%s"></td><td align="center"><input type="submit" value="設定"></td></tr></form>'
tbody = ''
for addr in addrs:
   d = r.hgetall(addr)
   dd = dict([(k.decode('utf-8'), v.decode('utf-8')) for k, v in d.items()])
   ch = dd.get('ch', '')
   if ch == 'None': ch = ''
   writekey = dd.get('writekey', '')
   if writekey == 'None': writekey = ''
   button = dd.get('button', '')
   if button == 'None' or button == '': button = '-'
   tbody += ttemplate % (addr, addr, dd.get('rssi'), button, ch, writekey)
print('Content-type: text/html\r\n')
print(html_body % tbody)
```
### 試したこと
ダメ元で、下から2行目のprint文中のバックスラッシュを、¥に変えてみましたが、結果は変わらずでした。
**/etc/init.d/redis-server start にて、redis を起動させた場合においても、うまく行きませんでした。**
### 補足情報(FW/ツールのバージョンなど)
Python初心の者です。アドバイスの程、よろしくおねがいいたします。
実はメインプログラムは別にありまして、それを実行させることで、データ取得後、web閲覧が可能になる仕組みです。cgi-bin下に置いた、ここに挙げたプログラムを使っていると判断し、開示させていただきました。メイン・プログラムもここに開示出来れば良いのですが、字数制限に引っかかってしまいます(st2ambient2.py で検索することができます)。お恥ずかしい次第ですが、メインプログラムから、当該プログラム(CGI?)への繋がり方がよく分かっておりません。アドバイスあればお願いいたします。
  • Python

    35772 questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

  • Redis

    215 questions

    Redisは、オープンソースのkey-valueデータストアで、NoSQLに分類されます。すべてのデータをメモリ上に保存するため、処理が極めて高速です。

21 誤字修正

jazzwalker

jazzwalker score 17

2019/03/21 10:46  投稿

Web上での表示がうまく行っていません。出るはずの数値が表示されてきません。
### 前提・実現したいこと
センサータグ(TI製)を用い温度等を測定、ラズパイをサーバーにして、測定されたデータをWeb上で閲覧する。redisを用いています。
### 発生している問題・エラーメッセージ
エラーは出ていません。
測定自体はされています。
Web上での表示がうまく行っていません。
![ここまでの表示は出ています](04da69af96d3c2965d4adb014a4881f0.jpeg)
上に画面を添付しましたが、出るはずの数値が表示されてきていません。また入力窓も表示されませんので、その先の作業(グラフ表示)に進めません。
最後のprint文に問題がありそうに思い、手直しを試みましたが、うまく行きませんでした。
### 該当のソースコード
```Python
#!/usr/bin/python3
# coding: utf-8
import redis
html_body = """
<!DOCTYPE html>
<html>
<head>
   <meta http-equiv="content-type" content="text/html;charset=utf-8">
   <title>SensorTag List</title>
   <style type="text/css">
       body {
           font-family: Verdana, Arial;
           font-size: 16px;
           background: #ffffff;
       }
       input {
           font-size: 100%%;
           text-align: center;
       }
   </style>
</head>
<body>
<div>
 <h1 style="text-align: center;">SensorTagリスト</h1>
 <table style="margin: 0 auto;" border="0" cellpadding="10">
   <thead>
     <tr>
       <th style="width: 200px;">センサー</th>
       <th>rssi</th>
       <th>電源ボタン</th>
       <th style="width: 100px;">チャネルID</th>
       <th style="width: 200px;">ライトキー</th>
       <th style="width: 100px;">設定</th>
     </tr>
   </thead>
   <tbody>
   %s
   </tbody>
 </table>
</div>
</body></html>"""
r = redis.StrictRedis(host='localhost', port=6379)
addrs = list(k.decode('utf-8') for k in r.keys())
ttemplate = '<form method="POST" action="result.py"><input type="hidden" name="addr" value="%s"><tr><td align="center">%s</td><td align="right">%s</td><td align="center">%s</td><td><input type="number" name="ch" value="%s"></td><td><input type="text" name="writekey" value="%s"></td><td align="center"><input type="submit" value="設定"></td></tr></form>'
tbody = ''
for addr in addrs:
   d = r.hgetall(addr)
   dd = dict([(k.decode('utf-8'), v.decode('utf-8')) for k, v in d.items()])
   ch = dd.get('ch', '')
   if ch == 'None': ch = ''
   writekey = dd.get('writekey', '')
   if writekey == 'None': writekey = ''
   button = dd.get('button', '')
   if button == 'None' or button == '': button = '-'
   tbody += ttemplate % (addr, addr, dd.get('rssi'), button, ch, writekey)
print('Content-type: text/html\r\n')
print(html_body % tbody)
```
### 試したこと
ダメ元で、下から2行目のprint文中のバックスラッシュを、¥に変えてみましたが、結果は変わらずでした。
### 補足情報(FW/ツールのバージョンなど)
Python初心の者です。アドバイスの程、よろしくおねがいいたします。
実はメインプログラムは別にありまして、それを実行させることで、データ取得後、web閲覧が可能になる仕組みです。cgi-bin下に置いた、ここに挙げたプログラムを使っていると判断し、開示させていただきました。メイン・プログラムもここに開示出来れば良いのですが、字数制限に引っかかってしまいます(st2ambient2.py で検索することができます)。お恥ずかしい次第ですが、メインプログラムから、当該プログラム(CGI?)への繋がり方がよく分かっておりません。アドバイスあればお願いいたします。
  • Python

    35772 questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

  • Redis

    215 questions

    Redisは、オープンソースのkey-valueデータストアで、NoSQLに分類されます。すべてのデータをメモリ上に保存するため、処理が極めて高速です。

20 文章の修正

jazzwalker

jazzwalker score 17

2019/03/21 10:45  投稿

Web上での表示がうまく行っていません。出るはずの数値が表示されてきません。
### 前提・実現したいこと
センサータグ(TI製)を用い温度等を測定、ラズパイをサーバーにして、測定されたデータをWeb上で閲覧する。redisを用いています。
### 発生している問題・エラーメッセージ
エラーは出ていません。
測定自体はされています。
Web上での表示がうまく行っていません。
![ここまでの表示は出ています](04da69af96d3c2965d4adb014a4881f0.jpeg)
上に画面を添付しましたが、出るはずの数値が表示されてきていません。また入力窓も表示されませんので、その先の作業(グラフ表示)に進めません。
最後のprint文に問題がありそうに思い、手直しを試みましたが、うまく行きませんでした。
### 該当のソースコード
```Python
#!/usr/bin/python3
# coding: utf-8
import redis
html_body = """
<!DOCTYPE html>
<html>
<head>
   <meta http-equiv="content-type" content="text/html;charset=utf-8">
   <title>SensorTag List</title>
   <style type="text/css">
       body {
           font-family: Verdana, Arial;
           font-size: 16px;
           background: #ffffff;
       }
       input {
           font-size: 100%%;
           text-align: center;
       }
   </style>
</head>
<body>
<div>
 <h1 style="text-align: center;">SensorTagリスト</h1>
 <table style="margin: 0 auto;" border="0" cellpadding="10">
   <thead>
     <tr>
       <th style="width: 200px;">センサー</th>
       <th>rssi</th>
       <th>電源ボタン</th>
       <th style="width: 100px;">チャネルID</th>
       <th style="width: 200px;">ライトキー</th>
       <th style="width: 100px;">設定</th>
     </tr>
   </thead>
   <tbody>
   %s
   </tbody>
 </table>
</div>
</body></html>"""
r = redis.StrictRedis(host='localhost', port=6379)
addrs = list(k.decode('utf-8') for k in r.keys())
ttemplate = '<form method="POST" action="result.py"><input type="hidden" name="addr" value="%s"><tr><td align="center">%s</td><td align="right">%s</td><td align="center">%s</td><td><input type="number" name="ch" value="%s"></td><td><input type="text" name="writekey" value="%s"></td><td align="center"><input type="submit" value="設定"></td></tr></form>'
tbody = ''
for addr in addrs:
   d = r.hgetall(addr)
   dd = dict([(k.decode('utf-8'), v.decode('utf-8')) for k, v in d.items()])
   ch = dd.get('ch', '')
   if ch == 'None': ch = ''
   writekey = dd.get('writekey', '')
   if writekey == 'None': writekey = ''
   button = dd.get('button', '')
   if button == 'None' or button == '': button = '-'
   tbody += ttemplate % (addr, addr, dd.get('rssi'), button, ch, writekey)
print('Content-type: text/html\r\n')
print(html_body % tbody)
```
### 試したこと
ダメ元で、下から2行目のprint文中のバックスラッシュを、¥に変えてみましたが、結果は変わらずでした。
/etc/init.d/redis-server start にて、redis は起動させております。
**/etc/init.d/redis-server start にて、redis は起動させた場合においても、うまく行きませんでした。**
### 補足情報(FW/ツールのバージョンなど)
Python初心の者です。アドバイスの程、よろしくおねがいいたします。
実はメインプログラムは別にありまして、それを実行させることで、データ取得後、web閲覧が可能になる仕組みです。cgi-bin下に置いた、ここに挙げたプログラムを使っていると判断し、開示させていただきました。メイン・プログラムもここに開示出来れば良いのですが、字数制限に引っかかってしまいます(st2ambient2.py で検索することができます)。お恥ずかしい次第ですが、メインプログラムから、当該プログラム(CGI?)への繋がり方がよく分かっておりません。アドバイスあればお願いいたします。
  • Python

    35772 questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

  • Redis

    215 questions

    Redisは、オープンソースのkey-valueデータストアで、NoSQLに分類されます。すべてのデータをメモリ上に保存するため、処理が極めて高速です。

19 追記

jazzwalker

jazzwalker score 17

2019/03/21 10:35  投稿

Web上での表示がうまく行っていません。出るはずの数値が表示されてきません。
### 前提・実現したいこと
センサータグ(TI製)を用い温度等を測定、ラズパイをサーバーにして、測定されたデータをWeb上で閲覧する。redisを用いています。
### 発生している問題・エラーメッセージ
エラーは出ていません。
測定自体はされています。
Web上での表示がうまく行っていません。
![ここまでの表示は出ています](04da69af96d3c2965d4adb014a4881f0.jpeg)
上に画面を添付しましたが、出るはずの数値が表示されてきていません。また入力窓も表示されませんので、その先の作業(グラフ表示)に進めません。
最後のprint文に問題がありそうに思い、手直しを試みましたが、うまく行きませんでした。
### 該当のソースコード
```Python
#!/usr/bin/python3
# coding: utf-8
import redis
html_body = """
<!DOCTYPE html>
<html>
<head>
   <meta http-equiv="content-type" content="text/html;charset=utf-8">
   <title>SensorTag List</title>
   <style type="text/css">
       body {
           font-family: Verdana, Arial;
           font-size: 16px;
           background: #ffffff;
       }
       input {
           font-size: 100%%;
           text-align: center;
       }
   </style>
</head>
<body>
<div>
 <h1 style="text-align: center;">SensorTagリスト</h1>
 <table style="margin: 0 auto;" border="0" cellpadding="10">
   <thead>
     <tr>
       <th style="width: 200px;">センサー</th>
       <th>rssi</th>
       <th>電源ボタン</th>
       <th style="width: 100px;">チャネルID</th>
       <th style="width: 200px;">ライトキー</th>
       <th style="width: 100px;">設定</th>
     </tr>
   </thead>
   <tbody>
   %s
   </tbody>
 </table>
</div>
</body></html>"""
r = redis.StrictRedis(host='localhost', port=6379)
addrs = list(k.decode('utf-8') for k in r.keys())
ttemplate = '<form method="POST" action="result.py"><input type="hidden" name="addr" value="%s"><tr><td align="center">%s</td><td align="right">%s</td><td align="center">%s</td><td><input type="number" name="ch" value="%s"></td><td><input type="text" name="writekey" value="%s"></td><td align="center"><input type="submit" value="設定"></td></tr></form>'
tbody = ''
for addr in addrs:
   d = r.hgetall(addr)
   dd = dict([(k.decode('utf-8'), v.decode('utf-8')) for k, v in d.items()])
   ch = dd.get('ch', '')
   if ch == 'None': ch = ''
   writekey = dd.get('writekey', '')
   if writekey == 'None': writekey = ''
   button = dd.get('button', '')
   if button == 'None' or button == '': button = '-'
   tbody += ttemplate % (addr, addr, dd.get('rssi'), button, ch, writekey)
print('Content-type: text/html\r\n')
print(html_body % tbody)
```
### 試したこと
ダメ元で、下から2行目のprint文中のバックスラッシュを、¥に変えてみましたが、結果は変わらずでした。
/etc/init.d/redis-server start にて、redis は起動させております。  
### 補足情報(FW/ツールのバージョンなど)
Python初心の者です。アドバイスの程、よろしくおねがいいたします。
実はメインプログラムは別にありまして、それを実行させることで、データ取得後、web閲覧が可能になる仕組みです。cgi-bin下に置いた、ここに挙げたプログラムを使っていると判断し、開示させていただきました。メイン・プログラムもここに開示出来れば良いのですが、字数制限に引っかかってしまいます(st2ambient2.py で検索することができます)。お恥ずかしい次第ですが、メインプログラムから、当該プログラム(CGI?)への繋がり方がよく分かっておりません。アドバイスあればお願いいたします。
  • Python

    35772 questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

  • Redis

    215 questions

    Redisは、オープンソースのkey-valueデータストアで、NoSQLに分類されます。すべてのデータをメモリ上に保存するため、処理が極めて高速です。

18 追記

jazzwalker

jazzwalker score 17

2019/03/21 09:18  投稿

Web上での表示がうまく行っていません。出るはずの数値が表示されてきません。
### 前提・実現したいこと
センサータグ(TI製)を用い温度等を測定、ラズパイをサーバーにして、測定されたデータをWeb上で閲覧する。redisを用いています。
### 発生している問題・エラーメッセージ
エラーは出ていません。
測定自体はされています。
Web上での表示がうまく行っていません。
![ここまでの表示は出ています](04da69af96d3c2965d4adb014a4881f0.jpeg)
上に画面を添付しましたが、出るはずの数値が表示されてきていません。また入力窓も表示されませんので、その先の作業(グラフ表示)に進めません。
最後のprint文に問題がありそうに思い、手直しを試みましたが、うまく行きませんでした。
### 該当のソースコード
```Python
#!/usr/bin/python3
# coding: utf-8
import redis
html_body = """
<!DOCTYPE html>
<html>
<head>
   <meta http-equiv="content-type" content="text/html;charset=utf-8">
   <title>SensorTag List</title>
   <style type="text/css">
       body {
           font-family: Verdana, Arial;
           font-size: 16px;
           background: #ffffff;
       }
       input {
           font-size: 100%%;
           text-align: center;
       }
   </style>
</head>
<body>
<div>
 <h1 style="text-align: center;">SensorTagリスト</h1>
 <table style="margin: 0 auto;" border="0" cellpadding="10">
   <thead>
     <tr>
       <th style="width: 200px;">センサー</th>
       <th>rssi</th>
       <th>電源ボタン</th>
       <th style="width: 100px;">チャネルID</th>
       <th style="width: 200px;">ライトキー</th>
       <th style="width: 100px;">設定</th>
     </tr>
   </thead>
   <tbody>
   %s
   </tbody>
 </table>
</div>
</body></html>"""
r = redis.StrictRedis(host='localhost', port=6379)
addrs = list(k.decode('utf-8') for k in r.keys())
ttemplate = '<form method="POST" action="result.py"><input type="hidden" name="addr" value="%s"><tr><td align="center">%s</td><td align="right">%s</td><td align="center">%s</td><td><input type="number" name="ch" value="%s"></td><td><input type="text" name="writekey" value="%s"></td><td align="center"><input type="submit" value="設定"></td></tr></form>'
tbody = ''
for addr in addrs:
   d = r.hgetall(addr)
   dd = dict([(k.decode('utf-8'), v.decode('utf-8')) for k, v in d.items()])
   ch = dd.get('ch', '')
   if ch == 'None': ch = ''
   writekey = dd.get('writekey', '')
   if writekey == 'None': writekey = ''
   button = dd.get('button', '')
   if button == 'None' or button == '': button = '-'
   tbody += ttemplate % (addr, addr, dd.get('rssi'), button, ch, writekey)
print('Content-type: text/html\r\n')
print(html_body % tbody)
```
### 試したこと
ダメ元で、下から2行目のprint文中のバックスラッシュを、¥に変えてみましたが、結果は変わらずでした。
### 補足情報(FW/ツールのバージョンなど)
Python初心の者です。アドバイスの程、よろしくおねがいいたします。
  • Python

    35772 questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

  • Redis

    215 questions

    Redisは、オープンソースのkey-valueデータストアで、NoSQLに分類されます。すべてのデータをメモリ上に保存するため、処理が極めて高速です。

17 文章の修正

jazzwalker

jazzwalker score 17

2019/03/21 09:16  投稿

Web上での表示がうまく行っていません。出るはずの数値が表示されてきません。
### 前提・実現したいこと
センサータグ(TI製)を用い温度等を測定、ラズパイをサーバーにして、測定されたデータをWeb上で閲覧する。redisを用いています。
### 発生している問題・エラーメッセージ
エラーは出ていません。
測定自体はされています。
Web上での表示がうまく行っていません。
![ここまでの表示は出ています](04da69af96d3c2965d4adb014a4881f0.jpeg)
出るはずの数値が表示されてきません。また入力窓も表示されませんので、その先の作業(グラフ表示)に進めません。
上に画面を添付しましたが、出るはずの数値が表示されてきていません。また入力窓も表示されませんので、その先の作業(グラフ表示)に進めません。
最後のprint文に問題がありそうに思い、手直しを試みましたが、うまく行きませんでした。
### 該当のソースコード
```Python
#!/usr/bin/python3
# coding: utf-8
import redis
html_body = """
<!DOCTYPE html>
<html>
<head>
   <meta http-equiv="content-type" content="text/html;charset=utf-8">
   <title>SensorTag List</title>
   <style type="text/css">
       body {
           font-family: Verdana, Arial;
           font-size: 16px;
           background: #ffffff;
       }
       input {
           font-size: 100%%;
           text-align: center;
       }
   </style>
</head>
<body>
<div>
 <h1 style="text-align: center;">SensorTagリスト</h1>
 <table style="margin: 0 auto;" border="0" cellpadding="10">
   <thead>
     <tr>
       <th style="width: 200px;">センサー</th>
       <th>rssi</th>
       <th>電源ボタン</th>
       <th style="width: 100px;">チャネルID</th>
       <th style="width: 200px;">ライトキー</th>
       <th style="width: 100px;">設定</th>
     </tr>
   </thead>
   <tbody>
   %s
   </tbody>
 </table>
</div>
</body></html>"""
r = redis.StrictRedis(host='localhost', port=6379)
addrs = list(k.decode('utf-8') for k in r.keys())
ttemplate = '<form method="POST" action="result.py"><input type="hidden" name="addr" value="%s"><tr><td align="center">%s</td><td align="right">%s</td><td align="center">%s</td><td><input type="number" name="ch" value="%s"></td><td><input type="text" name="writekey" value="%s"></td><td align="center"><input type="submit" value="設定"></td></tr></form>'
tbody = ''
for addr in addrs:
   d = r.hgetall(addr)
   dd = dict([(k.decode('utf-8'), v.decode('utf-8')) for k, v in d.items()])
   ch = dd.get('ch', '')
   if ch == 'None': ch = ''
   writekey = dd.get('writekey', '')
   if writekey == 'None': writekey = ''
   button = dd.get('button', '')
   if button == 'None' or button == '': button = '-'
   tbody += ttemplate % (addr, addr, dd.get('rssi'), button, ch, writekey)
print('Content-type: text/html\r\n')
print(html_body % tbody)
```
### 試したこと
ダメ元で、下から2行目のprint文中のバックスラッシュを、¥に変えてみましたが、結果は変わらずでした。
### 補足情報(FW/ツールのバージョンなど)
Python初心の者です。アドバイスの程、よろしくおねがいいたします。
実はメインのプログラムは別にありまして、それを実行させることで、データ取得後、web閲覧が可能になる仕組みです。ここに挙げたプログラムを使っていると判断し、開示させていただきました。メインのプログラムもここに開示出来れば良いのですが、字数制限に引っかかってしまいます(st2ambient2.py で検索することができます)。お恥ずかしい次第ですが、メインプログラムから、当該プログラムへの繋がり方がよく分かっておりません。アドバイスあればお願いいたします。
  • Python

    35772 questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

  • Redis

    215 questions

    Redisは、オープンソースのkey-valueデータストアで、NoSQLに分類されます。すべてのデータをメモリ上に保存するため、処理が極めて高速です。

16 直し

jazzwalker

jazzwalker score 17

2019/03/18 22:58  投稿

Web上での表示がうまく行っていません。出るはずの数値が表示されてきません。
### 前提・実現したいこと
センサータグ(TI製)を用い温度等を測定、ラズパイをサーバーにして、測定されたデータをWeb上で閲覧する。redisを用いています。
### 発生している問題・エラーメッセージ
エラーは出ていません。
測定自体はされています。
Web上での表示がうまく行っていません。
![ここまでの表示は出ています](04da69af96d3c2965d4adb014a4881f0.jpeg)出るはずの数値が表示されてきません。また入力窓も表示されませんので、その先の作業(グラフ表示)に進めません。
![ここまでの表示は出ています](04da69af96d3c2965d4adb014a4881f0.jpeg)
出るはずの数値が表示されてきません。また入力窓も表示されませんので、その先の作業(グラフ表示)に進めません。
最後のprint文に問題がありそうに思い、手直しを試みましたが、うまく行きませんでした。
### 該当のソースコード
```Python
#!/usr/bin/python3
# coding: utf-8
import redis
html_body = """
<!DOCTYPE html>
<html>
<head>
   <meta http-equiv="content-type" content="text/html;charset=utf-8">
   <title>SensorTag List</title>
   <style type="text/css">
       body {
           font-family: Verdana, Arial;
           font-size: 16px;
           background: #ffffff;
       }
       input {
           font-size: 100%%;
           text-align: center;
       }
   </style>
</head>
<body>
<div>
 <h1 style="text-align: center;">SensorTagリスト</h1>
 <table style="margin: 0 auto;" border="0" cellpadding="10">
   <thead>
     <tr>
       <th style="width: 200px;">センサー</th>
       <th>rssi</th>
       <th>電源ボタン</th>
       <th style="width: 100px;">チャネルID</th>
       <th style="width: 200px;">ライトキー</th>
       <th style="width: 100px;">設定</th>
     </tr>
   </thead>
   <tbody>
   %s
   </tbody>
 </table>
</div>
</body></html>"""
r = redis.StrictRedis(host='localhost', port=6379)
addrs = list(k.decode('utf-8') for k in r.keys())
ttemplate = '<form method="POST" action="result.py"><input type="hidden" name="addr" value="%s"><tr><td align="center">%s</td><td align="right">%s</td><td align="center">%s</td><td><input type="number" name="ch" value="%s"></td><td><input type="text" name="writekey" value="%s"></td><td align="center"><input type="submit" value="設定"></td></tr></form>'
tbody = ''
for addr in addrs:
   d = r.hgetall(addr)
   dd = dict([(k.decode('utf-8'), v.decode('utf-8')) for k, v in d.items()])
   ch = dd.get('ch', '')
   if ch == 'None': ch = ''
   writekey = dd.get('writekey', '')
   if writekey == 'None': writekey = ''
   button = dd.get('button', '')
   if button == 'None' or button == '': button = '-'
   tbody += ttemplate % (addr, addr, dd.get('rssi'), button, ch, writekey)
print('Content-type: text/html\r\n')
print(html_body % tbody)
```
### 試したこと
ダメ元で、下から2行目のprint文中のバックスラッシュを、¥に変えてみましたが、結果は変わらずでした。
### 補足情報(FW/ツールのバージョンなど)
Python初心の者です。アドバイスの程、よろしくおねがいいたします。
実はメインのプログラムは別にありまして、それを実行させることで、データ取得後、web閲覧が可能になる仕組みです。ここに挙げたプログラムを使っていると判断し、開示させていただきました。メインのプログラムもここに開示出来れば良いのですが、字数制限に引っかかってしまいます(st2ambient2.py で検索することができます)。お恥ずかしい次第ですが、メインプログラムから、当該プログラムへの繋がり方がよく分かっておりません。アドバイスあればお願いいたします。
  • Python

    35772 questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

  • Redis

    215 questions

    Redisは、オープンソースのkey-valueデータストアで、NoSQLに分類されます。すべてのデータをメモリ上に保存するため、処理が極めて高速です。

15 図の添付

jazzwalker

jazzwalker score 17

2019/03/18 22:57  投稿

Web上での表示がうまく行っていません。出るはずの数値が表示されてきません。
### 前提・実現したいこと
センサータグ(TI製)を用い温度等を測定、ラズパイをサーバーにして、測定されたデータをWeb上で閲覧する。redisを用いています。
### 発生している問題・エラーメッセージ
エラーは出ていません。
測定自体はされています。
Web上での表示がうまく行っていません。出るはずの数値が表示されてきません。また入力窓も表示されませんので、その先の作業(グラフ表示)に進めません。
Web上での表示がうまく行っていません。
![ここまでの表示は出ています](04da69af96d3c2965d4adb014a4881f0.jpeg)出るはずの数値が表示されてきません。また入力窓も表示されませんので、その先の作業(グラフ表示)に進めません。
最後のprint文に問題がありそうに思い、手直しを試みましたが、うまく行きませんでした。
### 該当のソースコード
```Python
#!/usr/bin/python3
# coding: utf-8
import redis
html_body = """
<!DOCTYPE html>
<html>
<head>
   <meta http-equiv="content-type" content="text/html;charset=utf-8">
   <title>SensorTag List</title>
   <style type="text/css">
       body {
           font-family: Verdana, Arial;
           font-size: 16px;
           background: #ffffff;
       }
       input {
           font-size: 100%%;
           text-align: center;
       }
   </style>
</head>
<body>
<div>
 <h1 style="text-align: center;">SensorTagリスト</h1>
 <table style="margin: 0 auto;" border="0" cellpadding="10">
   <thead>
     <tr>
       <th style="width: 200px;">センサー</th>
       <th>rssi</th>
       <th>電源ボタン</th>
       <th style="width: 100px;">チャネルID</th>
       <th style="width: 200px;">ライトキー</th>
       <th style="width: 100px;">設定</th>
     </tr>
   </thead>
   <tbody>
   %s
   </tbody>
 </table>
</div>
</body></html>"""
r = redis.StrictRedis(host='localhost', port=6379)
addrs = list(k.decode('utf-8') for k in r.keys())
ttemplate = '<form method="POST" action="result.py"><input type="hidden" name="addr" value="%s"><tr><td align="center">%s</td><td align="right">%s</td><td align="center">%s</td><td><input type="number" name="ch" value="%s"></td><td><input type="text" name="writekey" value="%s"></td><td align="center"><input type="submit" value="設定"></td></tr></form>'
tbody = ''
for addr in addrs:
   d = r.hgetall(addr)
   dd = dict([(k.decode('utf-8'), v.decode('utf-8')) for k, v in d.items()])
   ch = dd.get('ch', '')
   if ch == 'None': ch = ''
   writekey = dd.get('writekey', '')
   if writekey == 'None': writekey = ''
   button = dd.get('button', '')
   if button == 'None' or button == '': button = '-'
   tbody += ttemplate % (addr, addr, dd.get('rssi'), button, ch, writekey)
print('Content-type: text/html\r\n')
print(html_body % tbody)
```
### 試したこと
ダメ元で、下から2行目のprint文中のバックスラッシュを、¥に変えてみましたが、結果は変わらずでした。
### 補足情報(FW/ツールのバージョンなど)
Python初心の者です。アドバイスの程、よろしくおねがいいたします。
実はメインのプログラムは別にありまして、それを実行させることで、データ取得後、web閲覧が可能になる仕組みです。ここに挙げたプログラムを使っていると判断し、開示させていただきました。メインのプログラムもここに開示出来れば良いのですが、字数制限に引っかかってしまいます(st2ambient2.py で検索することができます)。お恥ずかしい次第ですが、メインプログラムから、当該プログラムへの繋がり方がよく分かっておりません。アドバイスあればお願いいたします。
  • Python

    35772 questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

  • Redis

    215 questions

    Redisは、オープンソースのkey-valueデータストアで、NoSQLに分類されます。すべてのデータをメモリ上に保存するため、処理が極めて高速です。

14 追記

jazzwalker

jazzwalker score 17

2019/03/08 11:06  投稿

Web上での表示がうまく行っていません。出るはずの数値が表示されてきません。
### 前提・実現したいこと
センサータグ(TI製)を用い温度等を測定、ラズパイをサーバーにして、測定されたデータをWeb上で閲覧する。redisを用いています。
### 発生している問題・エラーメッセージ
エラーは出ていません。
測定自体はされています。
Web上での表示がうまく行っていません。出るはずの数値が表示されてきません。また入力窓も表示されませんので、その先の作業(グラフ表示)に進めません。
最後のprint文に問題がありそうに思い、手直しを試みましたが、うまく行きませんでした。
### 該当のソースコード
```Python
#!/usr/bin/python3
# coding: utf-8
import redis
html_body = """
<!DOCTYPE html>
<html>
<head>
   <meta http-equiv="content-type" content="text/html;charset=utf-8">
   <title>SensorTag List</title>
   <style type="text/css">
       body {
           font-family: Verdana, Arial;
           font-size: 16px;
           background: #ffffff;
       }
       input {
           font-size: 100%%;
           text-align: center;
       }
   </style>
</head>
<body>
<div>
 <h1 style="text-align: center;">SensorTagリスト</h1>
 <table style="margin: 0 auto;" border="0" cellpadding="10">
   <thead>
     <tr>
       <th style="width: 200px;">センサー</th>
       <th>rssi</th>
       <th>電源ボタン</th>
       <th style="width: 100px;">チャネルID</th>
       <th style="width: 200px;">ライトキー</th>
       <th style="width: 100px;">設定</th>
     </tr>
   </thead>
   <tbody>
   %s
   </tbody>
 </table>
</div>
</body></html>"""
r = redis.StrictRedis(host='localhost', port=6379)
addrs = list(k.decode('utf-8') for k in r.keys())
ttemplate = '<form method="POST" action="result.py"><input type="hidden" name="addr" value="%s"><tr><td align="center">%s</td><td align="right">%s</td><td align="center">%s</td><td><input type="number" name="ch" value="%s"></td><td><input type="text" name="writekey" value="%s"></td><td align="center"><input type="submit" value="設定"></td></tr></form>'
tbody = ''
for addr in addrs:
   d = r.hgetall(addr)
   dd = dict([(k.decode('utf-8'), v.decode('utf-8')) for k, v in d.items()])
   ch = dd.get('ch', '')
   if ch == 'None': ch = ''
   writekey = dd.get('writekey', '')
   if writekey == 'None': writekey = ''
   button = dd.get('button', '')
   if button == 'None' or button == '': button = '-'
   tbody += ttemplate % (addr, addr, dd.get('rssi'), button, ch, writekey)
print('Content-type: text/html\r\n')
print(html_body % tbody)
```
### 試したこと
ダメ元で、下から2行目のprint文中のバックスラッシュを、¥に変えてみましたが、結果は変わらずでした。
### 補足情報(FW/ツールのバージョンなど)
Python初心の者です。アドバイスの程、よろしくおねがいいたします。
実はメインのプログラムは別にありまして、それを実行させることで、データ取得後、web閲覧が可能になる仕組みです。ここに挙げたプログラムを使っていると判断し、開示させていただきました。メインのプログラムもここに開示出来れば良いのですが、字数制限に引っかかってしまいます。お恥ずかしい次第ですが、メインプログラムから、当該プログラムへの繋がり方がよく分かっておりません。アドバイスあればお願いいたします。
実はメインのプログラムは別にありまして、それを実行させることで、データ取得後、web閲覧が可能になる仕組みです。ここに挙げたプログラムを使っていると判断し、開示させていただきました。メインのプログラムもここに開示出来れば良いのですが、字数制限に引っかかってしまいます(st2ambient2.py で検索することができます)。お恥ずかしい次第ですが、メインプログラムから、当該プログラムへの繋がり方がよく分かっておりません。アドバイスあればお願いいたします。
  • Python

    35772 questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

  • Redis

    215 questions

    Redisは、オープンソースのkey-valueデータストアで、NoSQLに分類されます。すべてのデータをメモリ上に保存するため、処理が極めて高速です。

13 文章修正

jazzwalker

jazzwalker score 17

2019/03/08 10:32  投稿

Web上での表示がうまく行っていません。出るはずの数値が表示されてきません。
### 前提・実現したいこと
センサータグ(TI製)を用い温度等を測定、ラズパイをサーバーにして、測定されたデータをWeb上で閲覧する。redisを用いています。
### 発生している問題・エラーメッセージ
エラーは出ていません。
測定自体はされています。
Web上での表示がうまく行っていません。出るはずの数値が表示されてきません。また入力窓も表示されませんので、その先の作業(グラフ表示)に進めません。
最後のprint文に問題がありそうに思い、手直しを試みましたが、うまく行きませんでした。
### 該当のソースコード
```Python
#!/usr/bin/python3
# coding: utf-8
import redis
html_body = """
<!DOCTYPE html>
<html>
<head>
   <meta http-equiv="content-type" content="text/html;charset=utf-8">
   <title>SensorTag List</title>
   <style type="text/css">
       body {
           font-family: Verdana, Arial;
           font-size: 16px;
           background: #ffffff;
       }
       input {
           font-size: 100%%;
           text-align: center;
       }
   </style>
</head>
<body>
<div>
 <h1 style="text-align: center;">SensorTagリスト</h1>
 <table style="margin: 0 auto;" border="0" cellpadding="10">
   <thead>
     <tr>
       <th style="width: 200px;">センサー</th>
       <th>rssi</th>
       <th>電源ボタン</th>
       <th style="width: 100px;">チャネルID</th>
       <th style="width: 200px;">ライトキー</th>
       <th style="width: 100px;">設定</th>
     </tr>
   </thead>
   <tbody>
   %s
   </tbody>
 </table>
</div>
</body></html>"""
r = redis.StrictRedis(host='localhost', port=6379)
addrs = list(k.decode('utf-8') for k in r.keys())
ttemplate = '<form method="POST" action="result.py"><input type="hidden" name="addr" value="%s"><tr><td align="center">%s</td><td align="right">%s</td><td align="center">%s</td><td><input type="number" name="ch" value="%s"></td><td><input type="text" name="writekey" value="%s"></td><td align="center"><input type="submit" value="設定"></td></tr></form>'
tbody = ''
for addr in addrs:
   d = r.hgetall(addr)
   dd = dict([(k.decode('utf-8'), v.decode('utf-8')) for k, v in d.items()])
   ch = dd.get('ch', '')
   if ch == 'None': ch = ''
   writekey = dd.get('writekey', '')
   if writekey == 'None': writekey = ''
   button = dd.get('button', '')
   if button == 'None' or button == '': button = '-'
   tbody += ttemplate % (addr, addr, dd.get('rssi'), button, ch, writekey)
print('Content-type: text/html\r\n')
print(html_body % tbody)
```
### 試したこと
ダメ元で、下から2行目のprint文中のバックスラッシュを、¥に変えてみましたが、結果は変わらずでした。
### 補足情報(FW/ツールのバージョンなど)
Python初心の者です。アドバイスの程、よろしくおねがいいたします。
  • Python

    35772 questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

  • Redis

    215 questions

    Redisは、オープンソースのkey-valueデータストアで、NoSQLに分類されます。すべてのデータをメモリ上に保存するため、処理が極めて高速です。

12 文章の追加。

jazzwalker

jazzwalker score 17

2019/03/07 08:42  投稿

Web上での表示がうまく行っていません。出るはずの数値が表示されてきません。
### 前提・実現したいこと
センサータグ(TI製)を用い温度等を測定、ラズパイをサーバーにして、測定されたデータをWeb上で閲覧する。redisを用いています。
### 発生している問題・エラーメッセージ
エラーは出ていません。
測定自体はされています。
Web上での表示がうまく行っていません。出るはずの数値が表示されてきません。また入力窓も表示されませんので、その先の作業(グラフ表示)に進めません。
### 該当のソースコード
```Python
#!/usr/bin/python3
# coding: utf-8
import redis
html_body = """
<!DOCTYPE html>
<html>
<head>
   <meta http-equiv="content-type" content="text/html;charset=utf-8">
   <title>SensorTag List</title>
   <style type="text/css">
       body {
           font-family: Verdana, Arial;
           font-size: 16px;
           background: #ffffff;
       }
       input {
           font-size: 100%%;
           text-align: center;
       }
   </style>
</head>
<body>
<div>
 <h1 style="text-align: center;">SensorTagリスト</h1>
 <table style="margin: 0 auto;" border="0" cellpadding="10">
   <thead>
     <tr>
       <th style="width: 200px;">センサー</th>
       <th>rssi</th>
       <th>電源ボタン</th>
       <th style="width: 100px;">チャネルID</th>
       <th style="width: 200px;">ライトキー</th>
       <th style="width: 100px;">設定</th>
     </tr>
   </thead>
   <tbody>
   %s
   </tbody>
 </table>
</div>
</body></html>"""
r = redis.StrictRedis(host='localhost', port=6379)
addrs = list(k.decode('utf-8') for k in r.keys())
ttemplate = '<form method="POST" action="result.py"><input type="hidden" name="addr" value="%s"><tr><td align="center">%s</td><td align="right">%s</td><td align="center">%s</td><td><input type="number" name="ch" value="%s"></td><td><input type="text" name="writekey" value="%s"></td><td align="center"><input type="submit" value="設定"></td></tr></form>'
tbody = ''
for addr in addrs:
   d = r.hgetall(addr)
   dd = dict([(k.decode('utf-8'), v.decode('utf-8')) for k, v in d.items()])
   ch = dd.get('ch', '')
   if ch == 'None': ch = ''
   writekey = dd.get('writekey', '')
   if writekey == 'None': writekey = ''
   button = dd.get('button', '')
   if button == 'None' or button == '': button = '-'
   tbody += ttemplate % (addr, addr, dd.get('rssi'), button, ch, writekey)
print('Content-type: text/html\r\n')
print(html_body % tbody)
```
### 試したこと
ダメ元で、下から2行目のprint文中のバックスラッシュを、¥に変えてみましたが、結果は変わらずでした。
### 補足情報(FW/ツールのバージョンなど)
Python初心の者です。アドバイスの程、よろしくおねがいいたします。
実はメインのプログラムは別にありまして、それを実行させることで、データ取得後、web閲覧が可能になる仕組みです。ここに全文を挙げたプログラムを使っていると思いましたので、出させていただきました。メインのプログラムもここに開示出来れば良いのですが、字数制限に引っかかってしまいます。お恥ずかしい次第ですが、メインプログラムから、当該プログラムへの繋がり方がよく分かっておりません。
実はメインのプログラムは別にありまして、それを実行させることで、データ取得後、web閲覧が可能になる仕組みです。ここに全文を挙げたプログラムを使っていると思いましたので、出させていただきました。メインのプログラムもここに開示出来れば良いのですが、字数制限に引っかかってしまいます。お恥ずかしい次第ですが、メインプログラムから、当該プログラムへの繋がり方がよく分かっておりません。アドバイスあればお願いいたします。
  • Python

    35772 questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

  • Redis

    215 questions

    Redisは、オープンソースのkey-valueデータストアで、NoSQLに分類されます。すべてのデータをメモリ上に保存するため、処理が極めて高速です。

11 表題の直し

jazzwalker

jazzwalker score 17

2019/03/05 11:13  投稿

Pythonのprint文中における、バックスラッシュの扱いについて
Web上での表示がうまく行っていません。出るはずの数値が表示されてきません。
### 前提・実現したいこと
センサータグ(TI製)を用い温度等を測定、ラズパイをサーバーにして、測定されたデータをWeb上で閲覧する。redisを用いています。
### 発生している問題・エラーメッセージ
エラーは出ていません。
測定自体はされています。
Web上での表示がうまく行っていません。出るはずの数値が表示されてきません。また入力窓も表示されませんので、その先の作業(グラフ表示)に進めません。
最後のprint文に問題がありそうに思いましたが、うまく行きませんでした。
### 該当のソースコード
```Python
#!/usr/bin/python3
# coding: utf-8
import redis
html_body = """
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<title>SensorTag List</title>
<style type="text/css">
body {
font-family: Verdana, Arial;
font-size: 16px;
background: #ffffff;
}
input {
font-size: 100%%;
text-align: center;
}
</style>
</head>
<body>
<div>
<h1 style="text-align: center;">SensorTagリスト</h1>
<table style="margin: 0 auto;" border="0" cellpadding="10">
<thead>
<tr>
<th style="width: 200px;">センサー</th>
<th>rssi</th>
<th>電源ボタン</th>
<th style="width: 100px;">チャネルID</th>
<th style="width: 200px;">ライトキー</th>
<th style="width: 100px;">設定</th>
</tr>
</thead>
<tbody>
%s
</tbody>
</table>
</div>
</body></html>"""
r = redis.StrictRedis(host='localhost', port=6379)
addrs = list(k.decode('utf-8') for k in r.keys())
ttemplate = '<form method="POST" action="result.py"><input type="hidden" name="addr" value="%s"><tr><td align="center">%s</td><td align="right">%s</td><td align="center">%s</td><td><input type="number" name="ch" value="%s"></td><td><input type="text" name="writekey" value="%s"></td><td align="center"><input type="submit" value="設定"></td></tr></form>'
tbody = ''
for addr in addrs:
d = r.hgetall(addr)
dd = dict([(k.decode('utf-8'), v.decode('utf-8')) for k, v in d.items()])
ch = dd.get('ch', '')
if ch == 'None': ch = ''
writekey = dd.get('writekey', '')
if writekey == 'None': writekey = ''
button = dd.get('button', '')
if button == 'None' or button == '': button = '-'
tbody += ttemplate % (addr, addr, dd.get('rssi'), button, ch, writekey)
print('Content-type: text/html\r\n')
print(html_body % tbody)
```
### 試したこと
ダメ元で、下から2行目のprint文中のバックスラッシュを、¥に変えてみましたが、結果は変わらずでした。
### 補足情報(FW/ツールのバージョンなど)
Python初心の者です。アドバイスの程、よろしくおねがいいたします。
実はメインのプログラムは別にありまして、それを実行させることで、データ取得後、web閲覧が可能になる仕組みです。ここに全文を挙げたプログラムを使っていると思いましたので、出させていただきました。メインのプログラムもここに開示出来れば良いのですが、字数制限に引っかかってしまいます。お恥ずかしい次第ですが、メインプログラムから、当該プログラムへの繋がり方がよく分かっておりません。
  • Python

    35772 questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

  • Redis

    215 questions

    Redisは、オープンソースのkey-valueデータストアで、NoSQLに分類されます。すべてのデータをメモリ上に保存するため、処理が極めて高速です。

10 誤字

jazzwalker

jazzwalker score 17

2019/03/05 11:12  投稿

Pythonのprint文中における、バックスラッシュの扱いについて
### 前提・実現したいこと
センサータグ(TI製)を用い温度等を測定、ラズパイをサーバーにして、測定されたデータをWeb上で閲覧する。redisを用いています。
### 発生している問題・エラーメッセージ
エラーは出ていません。
測定自体はされています。
Web上での表示がうまく行っていません。出るはずの数値が表示されてきません。また入力窓も表示されませんので、その先の作業(グラフ表示)に進めません。
最後のprint文に問題がありそうに思いましたが、うまく行きませんでした。
### 該当のソースコード
```Python
#!/usr/bin/python3
# coding: utf-8
import redis
html_body = """
<!DOCTYPE html>
<html>
<head>
   <meta http-equiv="content-type" content="text/html;charset=utf-8">
   <title>SensorTag List</title>
   <style type="text/css">
       body {
           font-family: Verdana, Arial;
           font-size: 16px;
           background: #ffffff;
       }
       input {
           font-size: 100%%;
           text-align: center;
       }
   </style>
</head>
<body>
<div>
 <h1 style="text-align: center;">SensorTagリスト</h1>
 <table style="margin: 0 auto;" border="0" cellpadding="10">
   <thead>
     <tr>
       <th style="width: 200px;">センサー</th>
       <th>rssi</th>
       <th>電源ボタン</th>
       <th style="width: 100px;">チャネルID</th>
       <th style="width: 200px;">ライトキー</th>
       <th style="width: 100px;">設定</th>
     </tr>
   </thead>
   <tbody>
   %s
   </tbody>
 </table>
</div>
</body></html>"""
r = redis.StrictRedis(host='localhost', port=6379)
addrs = list(k.decode('utf-8') for k in r.keys())
ttemplate = '<form method="POST" action="result.py"><input type="hidden" name="addr" value="%s"><tr><td align="center">%s</td><td align="right">%s</td><td align="center">%s</td><td><input type="number" name="ch" value="%s"></td><td><input type="text" name="writekey" value="%s"></td><td align="center"><input type="submit" value="設定"></td></tr></form>'
tbody = ''
for addr in addrs:
   d = r.hgetall(addr)
   dd = dict([(k.decode('utf-8'), v.decode('utf-8')) for k, v in d.items()])
   ch = dd.get('ch', '')
   if ch == 'None': ch = ''
   writekey = dd.get('writekey', '')
   if writekey == 'None': writekey = ''
   button = dd.get('button', '')
   if button == 'None' or button == '': button = '-'
   tbody += ttemplate % (addr, addr, dd.get('rssi'), button, ch, writekey)
print('Content-type: text/html\r\n')
print(html_body % tbody)
```
### 試したこと
ダメ元で、下から2行目のprint文中のバックスラッシュ(このページの表示では、¥になっているが)を、¥に変えてみましたが、結果は変わらずでした。
ダメ元で、下から2行目のprint文中のバックスラッシュを、¥に変えてみましたが、結果は変わらずでした。
### 補足情報(FW/ツールのバージョンなど)
Python初心の者です。アドバイスの程、よろしくおねがいいたします。
実はメインのプログラムは別にありまして、それを実行させることで、データ取得後、web閲覧が可能になる仕組みです。ここに全文を挙げたプログラムを使っていると思いましたので、出させていただきました。メインのプログラムもここに開示出来れば良いのですが、字数制限に引っかかってしまいます。お恥ずかしい次第ですが、メインプログラムから、当該プログラムへの繋がり方がよく分かっておりません。
  • Python

    35772 questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

  • Redis

    215 questions

    Redisは、オープンソースのkey-valueデータストアで、NoSQLに分類されます。すべてのデータをメモリ上に保存するため、処理が極めて高速です。

9

jazzwalker

jazzwalker score 17

2019/03/04 19:25  投稿

Pythonのprint文中における、バックスラッシュの扱いについて
### 前提・実現したいこと
センサータグ(TI製)を用い温度等を測定、ラズパイをサーバーにして、測定されたデータをWeb上で閲覧する。redisを用いています。
### 発生している問題・エラーメッセージ
エラーは出ていません。
測定自体はされています。
Web上での表示がうまく行っていません。出るはずの数値が表示されてきません。また入力窓も表示されませんので、その先の作業(グラフ表示)に進めません。
最後のprint文に問題がありそうに思いましたが、うまく行きませんでした。
### 該当のソースコード
```Python
#!/usr/bin/python3
# coding: utf-8
import redis
html_body = """
<!DOCTYPE html>
<html>
<head>
   <meta http-equiv="content-type" content="text/html;charset=utf-8">
   <title>SensorTag List</title>
   <style type="text/css">
       body {
           font-family: Verdana, Arial;
           font-size: 16px;
           background: #ffffff;
       }
       input {
           font-size: 100%%;
           text-align: center;
       }
   </style>
</head>
<body>
<div>
 <h1 style="text-align: center;">SensorTagリスト</h1>
 <table style="margin: 0 auto;" border="0" cellpadding="10">
   <thead>
     <tr>
       <th style="width: 200px;">センサー</th>
       <th>rssi</th>
       <th>電源ボタン</th>
       <th style="width: 100px;">チャネルID</th>
       <th style="width: 200px;">ライトキー</th>
       <th style="width: 100px;">設定</th>
     </tr>
   </thead>
   <tbody>
   %s
   </tbody>
 </table>
</div>
</body></html>"""
r = redis.StrictRedis(host='localhost', port=6379)
addrs = list(k.decode('utf-8') for k in r.keys())
ttemplate = '<form method="POST" action="result.py"><input type="hidden" name="addr" value="%s"><tr><td align="center">%s</td><td align="right">%s</td><td align="center">%s</td><td><input type="number" name="ch" value="%s"></td><td><input type="text" name="writekey" value="%s"></td><td align="center"><input type="submit" value="設定"></td></tr></form>'
tbody = ''
for addr in addrs:
   d = r.hgetall(addr)
   dd = dict([(k.decode('utf-8'), v.decode('utf-8')) for k, v in d.items()])
   ch = dd.get('ch', '')
   if ch == 'None': ch = ''
   writekey = dd.get('writekey', '')
   if writekey == 'None': writekey = ''
   button = dd.get('button', '')
   if button == 'None' or button == '': button = '-'
   tbody += ttemplate % (addr, addr, dd.get('rssi'), button, ch, writekey)
print('Content-type: text/html\r\n')
print(html_body % tbody)
```
### 試したこと
ダメ元で、下から2行目のprint文中のバックスラッシュ(このページの表示では、¥になっているが)を、¥に変えてみましたが、結果は変わらずでした。
### 補足情報(FW/ツールのバージョンなど)
Python初心の者です。アドバイスの程、よろしくおねがいいたします。
実はメインのプログラムは別にありまして、それを実行させることで、データ取得後、web閲覧が可能になる仕組みです。ここに全文を挙げたプログラムを使っていると思いましたので、出させていただきました。メインのプログラムも開示出来れば良いのですが、字数制限に引っかかってしまいます
実はメインのプログラムは別にありまして、それを実行させることで、データ取得後、web閲覧が可能になる仕組みです。ここに全文を挙げたプログラムを使っていると思いましたので、出させていただきました。メインのプログラムもここに開示出来れば良いのですが、字数制限に引っかかってしまいます。お恥ずかしい次第ですが、メインプログラムから、当該プログラムへの繋がり方がよく分かっておりません
  • Python

    35772 questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

  • Redis

    215 questions

    Redisは、オープンソースのkey-valueデータストアで、NoSQLに分類されます。すべてのデータをメモリ上に保存するため、処理が極めて高速です。

8

jazzwalker

jazzwalker score 17

2019/03/04 19:10  投稿

Pythonのprint文中における、バックスラッシュの扱いについて
### 前提・実現したいこと
センサータグ(TI製)を用い温度等を測定、ラズパイをサーバーにして、測定されたデータをWeb上で閲覧する。redisを用いています。
### 発生している問題・エラーメッセージ
エラーは出ていません。
測定自体はされています。
Web上での表示がうまく行っていません。出るはずの数値が表示されてきません。また入力窓も表示されませんので、その先の作業(グラフ表示)に進めません。
最後のprint文に問題がありそうに思いましたが、うまく行きませんでした。
### 該当のソースコード
```Python
#!/usr/bin/python3
# coding: utf-8
import redis
html_body = """
<!DOCTYPE html>
<html>
<head>
   <meta http-equiv="content-type" content="text/html;charset=utf-8">
   <title>SensorTag List</title>
   <style type="text/css">
       body {
           font-family: Verdana, Arial;
           font-size: 16px;
           background: #ffffff;
       }
       input {
           font-size: 100%%;
           text-align: center;
       }
   </style>
</head>
<body>
<div>
 <h1 style="text-align: center;">SensorTagリスト</h1>
 <table style="margin: 0 auto;" border="0" cellpadding="10">
   <thead>
     <tr>
       <th style="width: 200px;">センサー</th>
       <th>rssi</th>
       <th>電源ボタン</th>
       <th style="width: 100px;">チャネルID</th>
       <th style="width: 200px;">ライトキー</th>
       <th style="width: 100px;">設定</th>
     </tr>
   </thead>
   <tbody>
   %s
   </tbody>
 </table>
</div>
</body></html>"""
r = redis.StrictRedis(host='localhost', port=6379)
addrs = list(k.decode('utf-8') for k in r.keys())
ttemplate = '<form method="POST" action="result.py"><input type="hidden" name="addr" value="%s"><tr><td align="center">%s</td><td align="right">%s</td><td align="center">%s</td><td><input type="number" name="ch" value="%s"></td><td><input type="text" name="writekey" value="%s"></td><td align="center"><input type="submit" value="設定"></td></tr></form>'
tbody = ''
for addr in addrs:
   d = r.hgetall(addr)
   dd = dict([(k.decode('utf-8'), v.decode('utf-8')) for k, v in d.items()])
   ch = dd.get('ch', '')
   if ch == 'None': ch = ''
   writekey = dd.get('writekey', '')
   if writekey == 'None': writekey = ''
   button = dd.get('button', '')
   if button == 'None' or button == '': button = '-'
   tbody += ttemplate % (addr, addr, dd.get('rssi'), button, ch, writekey)
print('Content-type: text/html\r\n')
print(html_body % tbody)
```
### 試したこと
ダメ元で、下から2行目のprint文中のバックスラッシュ(このページの表示では、¥になっているが)を、¥に変えてみましたが、結果は変わらずでした。
### 補足情報(FW/ツールのバージョンなど)
Python初心の者です。アドバイスの程、よろしくおねがいいたします。
実はメインのプログラムは別にありまして、それを実行させることで、データ取得後、web閲覧が可能になる仕組みです。ここに全文を挙げたプログラムを使っていると思いましたので、出させていただきました。
実はメインのプログラムは別にありまして、それを実行させることで、データ取得後、web閲覧が可能になる仕組みです。ここに全文を挙げたプログラムを使っていると思いましたので、出させていただきました。メインのプログラムも開示出来れば良いのですが、字数制限に引っかかってしまいます。
  • Python

    35772 questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

  • Redis

    215 questions

    Redisは、オープンソースのkey-valueデータストアで、NoSQLに分類されます。すべてのデータをメモリ上に保存するため、処理が極めて高速です。

7

jazzwalker

jazzwalker score 17

2019/03/04 19:08  投稿

Pythonのprint文中における、バックスラッシュの扱いについて
### 前提・実現したいこと
センサータグ(TI製)を用い温度等を測定、ラズパイをサーバーにして、測定されたデータをWeb上で閲覧する。redisを用いています。
### 発生している問題・エラーメッセージ
エラーは出ていません。
測定自体はされています。
Web上での表示がうまく行っていません。出るはずの数値が表示されてきません。また入力窓も表示されませんので、その先の作業(グラフ表示)に進めません。
最後のprint文に問題がありそうに思いましたが、うまく行きませんでした。
### 該当のソースコード
```Python
#!/usr/bin/python3
# coding: utf-8
import redis
html_body = """
<!DOCTYPE html>
<html>
<head>
   <meta http-equiv="content-type" content="text/html;charset=utf-8">
   <title>SensorTag List</title>
   <style type="text/css">
       body {
           font-family: Verdana, Arial;
           font-size: 16px;
           background: #ffffff;
       }
       input {
           font-size: 100%%;
           text-align: center;
       }
   </style>
</head>
<body>
<div>
 <h1 style="text-align: center;">SensorTagリスト</h1>
 <table style="margin: 0 auto;" border="0" cellpadding="10">
   <thead>
     <tr>
       <th style="width: 200px;">センサー</th>
       <th>rssi</th>
       <th>電源ボタン</th>
       <th style="width: 100px;">チャネルID</th>
       <th style="width: 200px;">ライトキー</th>
       <th style="width: 100px;">設定</th>
     </tr>
   </thead>
   <tbody>
   %s
   </tbody>
 </table>
</div>
</body></html>"""
r = redis.StrictRedis(host='localhost', port=6379)
addrs = list(k.decode('utf-8') for k in r.keys())
ttemplate = '<form method="POST" action="result.py"><input type="hidden" name="addr" value="%s"><tr><td align="center">%s</td><td align="right">%s</td><td align="center">%s</td><td><input type="number" name="ch" value="%s"></td><td><input type="text" name="writekey" value="%s"></td><td align="center"><input type="submit" value="設定"></td></tr></form>'
tbody = ''
for addr in addrs:
   d = r.hgetall(addr)
   dd = dict([(k.decode('utf-8'), v.decode('utf-8')) for k, v in d.items()])
   ch = dd.get('ch', '')
   if ch == 'None': ch = ''
   writekey = dd.get('writekey', '')
   if writekey == 'None': writekey = ''
   button = dd.get('button', '')
   if button == 'None' or button == '': button = '-'
   tbody += ttemplate % (addr, addr, dd.get('rssi'), button, ch, writekey)
print('Content-type: text/html\r\n')
print(html_body % tbody)
```
### 試したこと
ダメ元で、下から2行目のprint文中のバックスラッシュ(このページの表示では、¥になっているが)を、¥に変えてみましたが、結果は変わらずでした。
 
### 補足情報(FW/ツールのバージョンなど)
Python初心の者です。アドバイスの程、よろしくおねがいいたします。
Python初心の者です。アドバイスの程、よろしくおねがいいたします。
実はメインのプログラムは別にありまして、それを実行させることで、データ取得後、web閲覧が可能になる仕組みです。ここに全文を挙げたプログラムを使っていると思いましたので、出させていただきました。
  • Python

    35772 questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

  • Redis

    215 questions

    Redisは、オープンソースのkey-valueデータストアで、NoSQLに分類されます。すべてのデータをメモリ上に保存するため、処理が極めて高速です。

6

jazzwalker

jazzwalker score 17

2019/03/04 18:57  投稿

Pythonのprint文中における、バックスラッシュの扱いについて
### 前提・実現したいこと
センサータグ(TI製)を用い温度等を測定、ラズパイをサーバーにして、測定されたデータをWeb上で閲覧する。redisを用いています。
### 発生している問題・エラーメッセージ
エラーは出ていません。
測定自体はされています。
Web上での表示がうまく行っていません。出るはずの数値が表示されてきません。また入力窓も表示されませんので、その先の作業(グラフ表示)に進めません。
最後のprint文に問題がありそうに思いましたが、うまく行きませんでした。
### 該当のソースコード
```Python
#!/usr/bin/python3
# coding: utf-8
import redis
html_body = """
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<title>SensorTag List</title>
<style type="text/css">
body {
font-family: Verdana, Arial;
font-size: 16px;
background: #ffffff;
}
input {
font-size: 100%%;
text-align: center;
}
</style>
</head>
<body>
<div>
<h1 style="text-align: center;">SensorTagリスト</h1>
<table style="margin: 0 auto;" border="0" cellpadding="10">
<thead>
<tr>
<th style="width: 200px;">センサー</th>
<th>rssi</th>
<th>電源ボタン</th>
<th style="width: 100px;">チャネルID</th>
<th style="width: 200px;">ライトキー</th>
<th style="width: 100px;">設定</th>
</tr>
</thead>
<tbody>
%s
</tbody>
</table>
</div>
</body></html>"""
r = redis.StrictRedis(host='localhost', port=6379)
addrs = list(k.decode('utf-8') for k in r.keys())
ttemplate = '<form method="POST" action="result.py"><input type="hidden" name="addr" value="%s"><tr><td align="center">%s</td><td align="right">%s</td><td align="center">%s</td><td><input type="number" name="ch" value="%s"></td><td><input type="text" name="writekey" value="%s"></td><td align="center"><input type="submit" value="設定"></td></tr></form>'
tbody = ''
for addr in addrs:
d = r.hgetall(addr)
dd = dict([(k.decode('utf-8'), v.decode('utf-8')) for k, v in d.items()])
ch = dd.get('ch', '')
if ch == 'None': ch = ''
writekey = dd.get('writekey', '')
if writekey == 'None': writekey = ''
button = dd.get('button', '')
if button == 'None' or button == '': button = '-'
tbody += ttemplate % (addr, addr, dd.get('rssi'), button, ch, writekey)
print('Content-type: text/html\r\n')
print(html_body % tbody)
```
### 試したこと
ダメ元で、下から2行目のprint文中のバックスラッシュ(このページの表示では、¥になっているが)を、¥に変えてみましたが、結果は変わらずでした。
### 補足情報(FW/ツールのバージョンなど)
Python初心の者です。アドバイスの程、よろしくおねがいいたします。
  • Python

    35772 questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

  • Redis

    215 questions

    Redisは、オープンソースのkey-valueデータストアで、NoSQLに分類されます。すべてのデータをメモリ上に保存するため、処理が極めて高速です。

5

jazzwalker

jazzwalker score 17

2019/03/04 18:56  投稿

Pythonのprint文中における、バックスラッシュの扱いについて
### 前提・実現したいこと
センサータグ(TI製)を用い温度等を測定、ラズパイをサーバーにして、測定されたデータをWeb上で閲覧する。redisを用いています。
### 発生している問題・エラーメッセージ
エラーは出ていません。
測定自体はされています。
Web上での表示がうまく行っていません。出るはずの数値が表示されてきません。また入力窓も表示されませんので、その先の作業(グラフ表示)に進めません。
最後のprint文に問題がありそうに思いましたが、うまく行きませんでした。
### 該当のソースコード
```Python
#!/usr/bin/python3
# coding: utf-8
import redis
html_body = """
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<title>SensorTag List</title>
<style type="text/css">
body {
font-family: Verdana, Arial;
font-size: 16px;
background: #ffffff;
}
input {
font-size: 100%%;
text-align: center;
}
</style>
</head>
<body>
<div>
<h1 style="text-align: center;">SensorTagリスト</h1>
<table style="margin: 0 auto;" border="0" cellpadding="10">
<thead>
<tr>
<th style="width: 200px;">センサー</th>
<th>rssi</th>
<th>電源ボタン</th>
<th style="width: 100px;">チャネルID</th>
<th style="width: 200px;">ライトキー</th>
<th style="width: 100px;">設定</th>
</tr>
</thead>
<tbody>
%s
</tbody>
</table>
</div>
</body></html>"""
r = redis.StrictRedis(host='localhost', port=6379)
addrs = list(k.decode('utf-8') for k in r.keys())
ttemplate = '<form method="POST" action="result.py"><input type="hidden" name="addr" value="%s"><tr><td align="center">%s</td><td align="right">%s</td><td align="center">%s</td><td><input type="number" name="ch" value="%s"></td><td><input type="text" name="writekey" value="%s"></td><td align="center"><input type="submit" value="設定"></td></tr></form>'
tbody = ''
for addr in addrs:
d = r.hgetall(addr)
dd = dict([(k.decode('utf-8'), v.decode('utf-8')) for k, v in d.items()])
ch = dd.get('ch', '')
if ch == 'None': ch = ''
writekey = dd.get('writekey', '')
if writekey == 'None': writekey = ''
button = dd.get('button', '')
if button == 'None' or button == '': button = '-'
tbody += ttemplate % (addr, addr, dd.get('rssi'), button, ch, writekey)
print('Content-type: text/html\r\n')
print(html_body % tbody)
```
### 試したこと
ダメ元で、下から2行目のprint文中のバックスラッシュ(このページの表示では、¥になっているが)を、¥に変えてみましたが、結果は変わらずでした。
### 補足情報(FW/ツールのバージョンなど)
Python初心の者です。アドバイスの程、よろしくおねがいいたします。
  • Python

    35772 questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

  • Redis

    215 questions

    Redisは、オープンソースのkey-valueデータストアで、NoSQLに分類されます。すべてのデータをメモリ上に保存するため、処理が極めて高速です。

4 誤字

jazzwalker

jazzwalker score 17

2019/03/04 12:24  投稿

Pythonのprint文中における、バックスラッシュの扱いについて
### 前提・実現したいこと
センサータグ(TI製)を用い温度等を測定、ラズパイをサーバーにして、測定されたデータをWeb上で閲覧する。redisを用いています。
### 発生している問題・エラーメッセージ
エラーは出ていません。測定自体はされているように思います。Web上での表示がうまく行っていません。出るはずの数値が表示されません。また入力窓も表示されませんので、その先の作業(グラフ表示)に進めません。
エラーは出ていません。
測定自体はされています。
Web上での表示がうまく行っていません。出るはずの数値が表示されてきません。また入力窓も表示されませんので、その先の作業(グラフ表示)に進めません。
最後のprint文に問題がありそうに思いましたが、うまく行きませんでした。
### 該当のソースコード
```Python
#!/usr/bin/python3
# coding: utf-8
import redis
html_body = """
<!DOCTYPE html>
<html>
<head>
   <meta http-equiv="content-type" content="text/html;charset=utf-8">
   <title>SensorTag List</title>
   <style type="text/css">
       body {
           font-family: Verdana, Arial;
           font-size: 16px;
           background: #ffffff;
       }
       input {
           font-size: 100%%;
           text-align: center;
       }
   </style>
</head>
<body>
<div>
 <h1 style="text-align: center;">SensorTagリスト</h1>
 <table style="margin: 0 auto;" border="0" cellpadding="10">
   <thead>
     <tr>
       <th style="width: 200px;">センサー</th>
       <th>rssi</th>
       <th>電源ボタン</th>
       <th style="width: 100px;">チャネルID</th>
       <th style="width: 200px;">ライトキー</th>
       <th style="width: 100px;">設定</th>
     </tr>
   </thead>
   <tbody>
   %s
   </tbody>
 </table>
</div>
</body></html>"""
r = redis.StrictRedis(host='localhost', port=6379)
addrs = list(k.decode('utf-8') for k in r.keys())
ttemplate = '<form method="POST" action="result.py"><input type="hidden" name="addr" value="%s"><tr><td align="center">%s</td><td align="right">%s</td><td align="center">%s</td><td><input type="number" name="ch" value="%s"></td><td><input type="text" name="writekey" value="%s"></td><td align="center"><input type="submit" value="設定"></td></tr></form>'
tbody = ''
for addr in addrs:
   d = r.hgetall(addr)
   dd = dict([(k.decode('utf-8'), v.decode('utf-8')) for k, v in d.items()])
   ch = dd.get('ch', '')
   if ch == 'None': ch = ''
   writekey = dd.get('writekey', '')
   if writekey == 'None': writekey = ''
   button = dd.get('button', '')
   if button == 'None' or button == '': button = '-'
   tbody += ttemplate % (addr, addr, dd.get('rssi'), button, ch, writekey)
print('Content-type: text/html\r\n')
print(html_body % tbody)
```
### 試したこと
ダメ元で、下から2行目のprint文中のバックスラッシュ(このページの表示では、¥になっているが)を、¥に変えてみましたが、結果は変わらずでした。
### 補足情報(FW/ツールのバージョンなど)
Python初心の者です。アドバイスの程、よろしくおねがいいたします。
  • Python

    35772 questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

  • Redis

    215 questions

    Redisは、オープンソースのkey-valueデータストアで、NoSQLに分類されます。すべてのデータをメモリ上に保存するため、処理が極めて高速です。

3 書式

jazzwalker

jazzwalker score 17

2019/03/04 12:22  投稿

Pythonのprint文中における、バックスラッシュの扱いについて
### 前提・実現したいこと
センサータグ(TI製)を用い温度等を測定、ラズパイをサーバーにして、測定されたデータをWeb上で閲覧する。redisを用いています。
### 発生している問題・エラーメッセージ
エラーは出ていません。測定自体はされているように思います。Web上での表示がうまく行っていません。出るはずの数値が表示されません。また入力窓も表示されませんので、その先の作業(グラフ表示)に進めません。
最後のprint文に問題がありそうに思いましたが、うまく行きませんでした。
### 該当のソースコード
```Python
ソースコード
```
#!/usr/bin/python3
# coding: utf-8
import redis
html_body = """
<!DOCTYPE html>
<html>
<head>
   <meta http-equiv="content-type" content="text/html;charset=utf-8">
   <title>SensorTag List</title>
   <style type="text/css">
       body {
           font-family: Verdana, Arial;
           font-size: 16px;
           background: #ffffff;
       }
       input {
           font-size: 100%%;
           text-align: center;
       }
   </style>
</head>
<body>
<div>
 <h1 style="text-align: center;">SensorTagリスト</h1>
 <table style="margin: 0 auto;" border="0" cellpadding="10">
   <thead>
     <tr>
       <th style="width: 200px;">センサー</th>
       <th>rssi</th>
       <th>電源ボタン</th>
       <th style="width: 100px;">チャネルID</th>
       <th style="width: 200px;">ライトキー</th>
       <th style="width: 100px;">設定</th>
     </tr>
   </thead>
   <tbody>
   %s
   </tbody>
 </table>
</div>
</body></html>"""
r = redis.StrictRedis(host='localhost', port=6379)
addrs = list(k.decode('utf-8') for k in r.keys())
ttemplate = '<form method="POST" action="result.py"><input type="hidden" name="addr" value="%s"><tr><td align="center">%s</td><td align="right">%s</td><td align="center">%s</td><td><input type="number" name="ch" value="%s"></td><td><input type="text" name="writekey" value="%s"></td><td align="center"><input type="submit" value="設定"></td></tr></form>'
tbody = ''
for addr in addrs:
   d = r.hgetall(addr)
   dd = dict([(k.decode('utf-8'), v.decode('utf-8')) for k, v in d.items()])
   ch = dd.get('ch', '')
   if ch == 'None': ch = ''
   writekey = dd.get('writekey', '')
   if writekey == 'None': writekey = ''
   button = dd.get('button', '')
   if button == 'None' or button == '': button = '-'
   tbody += ttemplate % (addr, addr, dd.get('rssi'), button, ch, writekey)
print('Content-type: text/html\r\n')
print(html_body % tbody)
```  
### 試したこと
ダメ元で、下から2行目のprint文中のバックスラッシュ(このページの表示では、¥になっているが)を、¥に変えてみましたが、結果は変わらずでした。
### 補足情報(FW/ツールのバージョンなど)
Python初心の者です。アドバイスの程、よろしくおねがいいたします。
  • Python

    35772 questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

  • Redis

    215 questions

    Redisは、オープンソースのkey-valueデータストアで、NoSQLに分類されます。すべてのデータをメモリ上に保存するため、処理が極めて高速です。

2 誤字

jazzwalker

jazzwalker score 17

2019/03/04 12:16  投稿

Pythonのprint文中における、バックスラッシュの扱いについて
### 前提・実現したいこと
センサータグ(TI製)を用い温度等を測定、ラズパイをサーバーにして、測定されたデータをWeb上で閲覧する。redisを用いています。
### 発生している問題・エラーメッセージ
エラーは出ていません。測定自体はされているように思います。Web上での表示がうまく行っていません。数値が表示されません。入力窓が表示されませんので、その先の作業に進めません。
エラーは出ていません。測定自体はされているように思います。Web上での表示がうまく行っていません。出るはずの数値が表示されません。また入力窓も表示されませんので、その先の作業(グラフ表示)に進めません。
### 該当のソースコード
```Python
ソースコード
```
#!/usr/bin/python3
# coding: utf-8
import redis
html_body = """
<!DOCTYPE html>
<html>
<head>
   <meta http-equiv="content-type" content="text/html;charset=utf-8">
   <title>SensorTag List</title>
   <style type="text/css">
       body {
           font-family: Verdana, Arial;
           font-size: 16px;
           background: #ffffff;
       }
       input {
           font-size: 100%%;
           text-align: center;
       }
   </style>
</head>
<body>
<div>
 <h1 style="text-align: center;">SensorTagリスト</h1>
 <table style="margin: 0 auto;" border="0" cellpadding="10">
   <thead>
     <tr>
       <th style="width: 200px;">センサー</th>
       <th>rssi</th>
       <th>電源ボタン</th>
       <th style="width: 100px;">チャネルID</th>
       <th style="width: 200px;">ライトキー</th>
       <th style="width: 100px;">設定</th>
     </tr>
   </thead>
   <tbody>
   %s
   </tbody>
 </table>
</div>
</body></html>"""
r = redis.StrictRedis(host='localhost', port=6379)
addrs = list(k.decode('utf-8') for k in r.keys())
ttemplate = '<form method="POST" action="result.py"><input type="hidden" name="addr" value="%s"><tr><td align="center">%s</td><td align="right">%s</td><td align="center">%s</td><td><input type="number" name="ch" value="%s"></td><td><input type="text" name="writekey" value="%s"></td><td align="center"><input type="submit" value="設定"></td></tr></form>'
tbody = ''
for addr in addrs:
   d = r.hgetall(addr)
   dd = dict([(k.decode('utf-8'), v.decode('utf-8')) for k, v in d.items()])
   ch = dd.get('ch', '')
   if ch == 'None': ch = ''
   writekey = dd.get('writekey', '')
   if writekey == 'None': writekey = ''
   button = dd.get('button', '')
   if button == 'None' or button == '': button = '-'
   tbody += ttemplate % (addr, addr, dd.get('rssi'), button, ch, writekey)
print('Content-type: text/html\r\n')
print(html_body % tbody)
### 試したこと
ダメ元で、下から2行目のprint文中のバックスラッシュを、¥に変えてみましたが、結果は変わらずでした。
ダメ元で、下から2行目のprint文中のバックスラッシュ(このページの表示では、¥になっているが)を、¥に変えてみましたが、結果は変わらずでした。
### 補足情報(FW/ツールのバージョンなど)
アドバイスの程、よろしくおねがいいたします。
Python初心の者です。アドバイスの程、よろしくおねがいいたします。
  • Python

    35772 questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

  • Redis

    215 questions

    Redisは、オープンソースのkey-valueデータストアで、NoSQLに分類されます。すべてのデータをメモリ上に保存するため、処理が極めて高速です。

1 誤字

jazzwalker

jazzwalker score 17

2019/03/04 12:10  投稿

Pythonのprint文中における、バックスラッシュの扱いについて
### 前提・実現したいこと
センサータグ(TI製)を用い温度等を測定、ラズパイをサーバーにして、測定されたデータをWeb上で閲覧する。redisを用いています。
### 発生している問題・エラーメッセージ
最後のprint文に問題がありそうに思います。
### 該当のソースコード
```Python
ソースコード
```
#!/usr/bin/python3
# coding: utf-8
import redis
html_body = """
<!DOCTYPE html>
<html>
<head>
   <meta http-equiv="content-type" content="text/html;charset=utf-8">
   <title>SensorTag List</title>
   <style type="text/css">
       body {
           font-family: Verdana, Arial;
           font-size: 16px;
           background: #ffffff;
       }
       input {
           font-size: 100%%;
           text-align: center;
       }
   </style>
</head>
<body>
<div>
 <h1 style="text-align: center;">SensorTagリスト</h1>
 <table style="margin: 0 auto;" border="0" cellpadding="10">
   <thead>
     <tr>
       <th style="width: 200px;">センサー</th>
       <th>rssi</th>
       <th>電源ボタン</th>
       <th style="width: 100px;">チャネルID</th>
       <th style="width: 200px;">ライトキー</th>
       <th style="width: 100px;">設定</th>
     </tr>
   </thead>
   <tbody>
   %s
   </tbody>
 </table>
</div>
</body></html>"""
r = redis.StrictRedis(host='localhost', port=6379)
addrs = list(k.decode('utf-8') for k in r.keys())
ttemplate = '<form method="POST" action="result.py"><input type="hidden" name="addr" value="%s"><tr><td align="center">%s</td><td align="right">%s</td><td align="center">%s</td><td><input type="number" name="ch" value="%s"></td><td><input type="text" name="writekey" value="%s"></td><td align="center"><input type="submit" value="設定"></td></tr></form>'
tbody = ''
for addr in addrs:
   d = r.hgetall(addr)
   dd = dict([(k.decode('utf-8'), v.decode('utf-8')) for k, v in d.items()])
   ch = dd.get('ch', '')
   if ch == 'None': ch = ''
   writekey = dd.get('writekey', '')
   if writekey == 'None': writekey = ''
   button = dd.get('button', '')
   if button == 'None' or button == '': button = '-'
   tbody += ttemplate % (addr, addr, dd.get('rssi'), button, ch, writekey)
print('Content-type: text/html\r\n')
print(html_body % tbody)
### 試したこと
ダメ元で、バックスラッシュを、¥に変えてみたが、結果は変わらずでした。
ダメ元で、下から2行目のprint文中のバックスラッシュを、¥に変えてみましたが、結果は変わらずでした。
### 補足情報(FW/ツールのバージョンなど)
  • Python

    35772 questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

  • Redis

    215 questions

    Redisは、オープンソースのkey-valueデータストアで、NoSQLに分類されます。すべてのデータをメモリ上に保存するため、処理が極めて高速です。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る