python调用adb shell命令

本文介绍如何利用Python的os模块和subprocess模块来执行系统命令,包括查看网络配置、列出Android设备上的应用包名,以及运行Monkey测试。通过实例展示了不同方法的使用,并提供了一个Monkey测试的类方法实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

import os
import subprocess
import codecs

#使用popen
def execmd(cmd):
f=os.popen(cmd)
text=f.read()
f.close()
return text

if name==‘main’:
cmd=“ipconfig/all”
execmd(cmd)
print execmd(cmd)

#使用subprocess
raw_input(‘press Enter to continue…’)
app_package=subprocess.Popen(‘adb shell cd sdcard&&cd Android&&cd data&&ls’, stdout=subprocess.PIPE, stderr=subprocess.PIPE)#自动执行adb shell以后的命令,获取app的package
print app_package.stdout.read()
raw_input(“press Enter to continue…”)

monkey=subprocess.Popen(‘adb shell monkey -s 200 -p prancent.project.rentalhouse.app --ignore-timeouts --ignore-crashes -v 400000 --throttle 500>/sdcard/monkey_log.txt’,stdout=subprocess.PIPE, stderr=subprocess.PIPE)
#运行monkey命令
print monkey.stdout.read()

#类方法
import subprocess

class monkey(object):
def init(self,appname,s,count,t,filename):
self.pack=appname
self.seed=s
self.count=count
self.time=t
self.storage=filename

def test(self):
    test_monkey=subprocess.Popen('adb shell monkey '+self.pack+' '+'-s '+self.seed+' --ignore-timeouts --ignore-crashes -v '+self.count+' '+self.time+' '+self.storage,stdout=subprocess.PIPE,stdin=subprocess.PIPE)
    return test_monkey.stdout.read()
    # return test_monkey

if name==“main”:
run=monkey(’-p cn.rainbow.westore’,‘200’,‘300’,’–throttle 500’,’>/sdcard/monkey_log.txt’)
run.test()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值