基本的には、Arduino
を接続してコンピュータと通信しています。目標は、ボタンをクリックしているときにChromiumを開くことです。クリックすると、Arduinoのはserial communication
上の文字列を送信し、コンピュータがPython
スクリプトにこの文字列のおかげを取得します。Ubuntu/Python:SubProccess.PopenからChromiumを起動できません
このスクリプトは起動しませんChromium
ため除外、私は何の問題もなく、すべてのことを行うことができましたPopen(['chromium-brower'])
を使用してChromium
を起動します。構文は正しいですが、端末は理解できない奇妙なエラーを返します。
#!/usr/bin/env python
import serial
from subprocess import Popen
ser = serial.Serial('/dev/ttyACM0', 9600)
while 1 :
line = ser.readline().strip()
print line
if line == "start":
p = Popen(["chromium-browser"])
は、私がPopen(["gedit"])
とPopen(["firefox"])
として、他のアプリで試してみましたし、それがうまく働いた:
sudo python serialtest.py start [0825/084720:ERROR:nss_util.cc(96)] Failed to create /home/dlslabo/.pki/nssdb directory. [0825/084721:FATAL:chrome_main_delegate.cc(386)] Check failed: process_type.empty(). Unable to get the user data directory for process type: zygote #0 0x7f1a233095fe base::debug::StackTrace::StackTrace() #1 0x7f1a23325f8e logging::LogMessage::~LogMessage() #2 0x7f1a2f3a11f5 #3 0x7f1a2aa8f224 #4 0x7f1a2aa8d80d content::ContentMain() #5 0x7f1a2f3a065a #6 0x7f1a17a25a40 __libc_start_main #7 0x7f1a2f3a0519
は、ここに私のpythonプログラムです。 私はインターネット上で読んだから、私は、スーパーユーザーとしてスクリプトを実行していますので、これは可能性があります。しかし、なぜこのことが問題になるのか分かりません。 root
ユーザーとしてブラウザ(またはシステム管理のためではない、他のプログラム)を実行する
あなたは、スーパーユーザーとして、それを起動しない場合はどうなりますか? – Kev1n91