我正试图从这样的python脚本启动Chrome。
Expanded(
child: Card(
child: ListTile(
title: Text(
this.birthDate == null
? 'Birthdate'
: '${this.birthDate.year}-${this.birthDate.month}-${this.birthDate.day}',
style: TextStyle(color: Colors.grey[600]),
),
onTap: () {
DatePicker.showDatePicker(
context,
initialDateTime: this.birthDate,
onConfirm: (newDate, listOfIndexes) {
setState(() {
this.birthDate = newDate;
});
},
);
},
),
),
),
当我运行它时,我得到:
'chrome.exe'不被识别为内部或外部命令, 可操作的程序或批处理文件。'
我猜测是os.sys.path.append()修改的路径与os.system()中使用的路径不同吗?如何确保我将chrome添加到正确的路径,并且在通过os.system()运行命令时可以正常工作?
答案 0 :(得分:3)
os.system
产生一个子外壳,该子外壳可能不会对您在python进程中进行的系统路径进行更改。如果您知道可执行文件的完整路径,则应将其传递给调用
os.system('C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe -remote-debugging-port=9014 --user-data-dir="{}"'.format(profilePath))
答案 1 :(得分:0)
尝试使用os.system
吗?
os.system('setx path "%path%;C:\Program Files (x86)\Google\Chrome\Application"')
答案 2 :(得分:0)
对我来说这可行:
将Chrome添加到path variables
import subprocess
chrome_path = "chrome.exe --new-window"
start_page = "https://google.com"
command = 'cmd /c "%s %s"' % (chrome_path, start_page)
process = subprocess.Popen(command, shell=True, stdout=subprocess.PIPE)