2016-09-05 2 views
0

Я пишу простой скрипт python, используя Subprocess, чтобы получить список iDevices, прикрепленный к моему mac. Команда, которую я использую, - это «приборы-устройства». Эта команда отлично работает, когда я запускаю командную строку, но у меня возникают проблемы, когда я использую ту же команду, используя подпроцесс.Получение iDevices с использованием инструментов застревает при работе под подпроцессом Python

Ниже мой простой питон скрипт

import subprocess 

    cmd = ['instruments', '-s', 'devices'] 
    response = subprocess.Popen(cmd,stdout=subprocess.PIPE) 
    print response.communicate() 

экран Мой терминал выглядит, как показано ниже, когда я запускаю вышеупомянутую команду Python

MacBook-Pro-9:lib darren$ python iOSRemoteLib.py 
2016-09-05 14:30:38.648 instruments[21276:1052546] WebKit Threading Violation - initial use of WebKit from a secondary thread. 

Процесс питон получает Хунг и не возвращает никакого ответа. Похож на какую-то проблему с резьбой, и я не могу понять, что.

Благодаря

ответ

0

У вас есть две версии Xcode? Я столкнулся с той же проблемой, что и подпроцесс (приборы-устройства). У меня есть как XCode 8.0, так и 7.3.1. Эта проблема возникает только после переключения на 7.3.1. Получается subprocess.Popen ('sudo instruments -s devices', stdout = subprocess.PIPE) работает нормально. Так что, вероятно, проблема с разрешением.