関連記事:東芝REGZAのWEB API
PythonでのDigest認証
import requests from requests.auth import HTTPDigestAuth r = requests.get('http://@URL@', auth=HTTPDigestAuth('@user@', '@pass@')) r.status_code
東芝テレビ(レグザ:REGZA)のWEB API仕様
WEB API実行時にDigest認証(ダイジェストにんしょう)が必要となります。
 ユーザ名およびパスワードは、レグザAppコネクト設定で設定したユーザー名とパスワードになります。
「(リモコン)設定ボタン」「接続機器設定」「外部連携設定」「レグザAppコネクト設定」
プログラムからの利用時には、Digest認証に対応した方法で利用する必要があります。
http://[REGZA IP]/remote/remote.htm?key=[command_key]
IE、Chrome、Firefoxなど一般ブラウザから動作確認できます。
 戻り値は、テキスト出力として数字が返ってきました。
 「0」成功 「0以外」失敗。
 ブラウザで操作している際に、テレビの音量を上げようとすると「4」というエラー番号も見ることが出来ました。電源ボタンを押した直後に音量操作実施のタイミング。
テレビのIPアドレスが192.168.0.77の場合のコマンドサンプル
- 音量を上げたいとき
http://192.168.0.77/remote/remote.htm?key=40BF1A - チャンネル「8」ボタンを押す
http://192.168.0.77/remote/remote.htm?key=40BF08 - リモコンの「青」ボタンを押す
http://192.168.0.77/remote/remote.htm?key=40BF73 
[command_key]リスト
| ボタン名 | [command_key] | 
| 1 | 40BF01 | 
| 2 | 40BF02 | 
| 3 | 40BF03 | 
| 4 | 40BF04 | 
| 5 | 40BF05 | 
| 6 | 40BF06 | 
| 7 | 40BF07 | 
| 8 | 40BF08 | 
| 9 | 40BF09 | 
| 10 | 40BF0A | 
| 11 | 40BF0B | 
| 12 | 40BF0C | 
| 入力切替 | 40BF0F | 
| 消音 | 40BF10 | 
| 電源 | 40BF12 | 
| 音声切り替え | 40BF13 | 
| 音量↑ | 40BF1A | 
| チャンネル↑ | 40BF1B | 
| 画面表示 | 40BF1C | 
| 音量↓ | 40BF1E | 
| チャンネル↓ | 40BF1F | 
| ブロードバンド | 40BF25 | 
| クイック | 40BF27 | 
| マルチ画面 | 40BF29 | 
| 画面サイズ | 40BF2B | 
| 戻る | 40BF3B | 
| 終了 | 40BF3C | 
| 決定 | 40BF3D | 
| ↑ | 40BF3E | 
| ↓ | 40BF3F | 
| 一時停止(静止) | 40BF50 | 
| → | 40BF5B | 
| ← | 40BF5F | 
| CH番号 | 40BF60 | 
| サーチ | 40BF60 | 
| ラジオ/データ | 40BF6D | 
| 番組表 | 40BF6E | 
| 番組説明 | 40BF71 | 
| 青 | 40BF73 | 
| 赤 | 40BF74 | 
| 緑 | 40BF75 | 
| 黄 | 40BF76 | 
| ミニ番組表 | 40BF77 | 
| 地デジ | 40BF7A | 
| 地アナ | 40BF7B | 
| BS | 40BF7C | 
| CS | 40BF7D | 
| 録画 | 40BF86 | 
| 設定メニュー | 40BFD0 | 
| ↑↑ | 40BE20 | 
| ↓↓ | 40BE21 | 
| →→(30秒送り) | 40BE22 | 
| ←←(10秒戻し) | 40BE23 | 
| 早送りスキップ | 40BE26 | 
| 戻るスキップ | 40BE27 | 
| 録画リスト | 40BE28 | 
| 停止 | 40BE2B | 
| 巻き戻し | 40BE2C | 
| 再生 | 40BE2D | 
| 早送り | 40BE2E | 
| レグザメニュー | 40BE34 | 
| タイムシフト | 40BE35 | 
| 番組検索 | 40BE36 | 
| 始めにジャンプ | 40BE47 | 
| イジェクト | 40BE93 | 
| ディスク | 40BE9E | 
| dデータ | 43BC14 | 
| 字幕 | 43BC52 | 
PythonでのREGZA操作サンプルソースコード
import requests
from requests.auth import HTTPDigestAuth
TV_IP = "xxx.xxx.xxx.xxx"
TV_USER = "user"
TV_PASS = "pass"
TV_VOLUME_DOWN = "40BF1E"
TV_BOTTON_8 = "40BF08"
def execjanken(key):
    url = "http://" + TV_IP + "/remote/remote.htm?key=" + key
    r = requests.get(url, auth=HTTPDigestAuth(TV_USER, TV_PASS))
    return True
//Change channel to 8
execjanken(TV_BOTTON_8)