no time to say 直接上代码吧
1.Python adb交互
python2:
os.system()
python3:
import subprocess
2.生成日志的命令,这样是正确的
class abc(object):
def getLogcat1(self):
filename ='a'+ ".txt"
logcat_file = open(filename, 'w')
logcmd = "adb logcat -v time"
pro = subprocess.Popen(logcmd, stdout=logcat_file, stderr=subprocess.PIPE)
# logCmd = r'adb logcat -v time > .\{}'.format('name')
# subprocess.getstatusoutput(r'adb logcat -v time > .\{}'.format('name'))
return pro, filename
if __name__ == '__main__':
abc().getLogcat1()
具体在我项目中的实现,是这样的
#抓取日志
def logCat(self):
nowtime = datetime.datetime.now().strftime('%Y%m%d%H%M%S')
filename = nowtime + ".txt"
logcat_file = open(filename, 'w')
logcmd = 'adb logcat -v time'
pro = subprocess.Popen(logcmd, stdout=logcat_file, stderr=subprocess.PIPE)
#结束进程
def killPro(self, pro):
pro.kill()
# .close()是关闭文件的 .kill()是杀掉进程
#抓取日志
def logCat(self):
nowtime = datetime.datetime.now().strftime('%Y%m%d%H%M%S')
filename = nowtime + ".txt"
logcat_file = open(filename, 'w')
logcmd = 'adb logcat -v time'
pro = subprocess.Popen(logcmd, stdout=logcat_file, stderr=subprocess.PIPE)
#结束进程
def killPro(self, pro):
pro.kill()
# .close()是关闭文件的 .kill()是杀掉进程
至于我项目中遇到的问题,简单说一下,
subprocess.getstatusoutput(r'adb logcat -v time > .\{}'.format(name))