adb connection python 一键 wifi 连接

原创 2015年07月08日 22:16:14


文件 清单 wifi.py

#!/user/bin python
# -*- coding:utf-8 -*- 
'''
 @Author:        py.gooker
 @DateTime:    2015-07-08 17:14:52
 @Description: used to adb connect
  涉及的命令:http://developer.android.com/tools/help/adb.html#wireless
        adb devices     # 查看已经连接的设备
        adb shell netcfg    #(查看设备 IP)
        adb tcpip 555  # Restart host adb in tcpip mode.
        adb connect # Connect adb host to device
        adb devices
'''


import subprocess as sp
import os
import sys
import time

def main():
    # print("main")
    cmd_devices = 'adb devices'
    cmd_cfg = 'adb -s %s shell netcfg'
    cmd_tcpip = 'adb -s %s tcpip 5555'
    cmd_conn = 'adb connect %s '
    # info_devices = sp.Popen(cmd_devices,shell=True)
    src_outer = os.popen(cmd_devices).read().strip()
    # info_devices = sp.call(cmd_devices)
    # print("---------")
    # print(info_devices)
    # print("src_outer" , src_outer)
    if not src_outer :
        print('there is no message out when cmd ' + cmd_devices)
        sys.exit(0)
    touch_info = 'List of devices attached'
    lists = src_outer[src_outer.index(touch_info) + len(touch_info):]
    
    if not lists :
        print("There has no device connect ths computer ! ")
        sys.exit(0)
    # print(lists)
    dev_list = lists.strip().split('\n')
    # print(dev_list)
    if dev_list and len(dev_list) >= 1:
        for device in dev_list :
            print(device)
            if '5555' in device :
                break
            dev_name = device.split('\t')[0]
            print(dev_name)
            tcpip_info = os.popen(cmd_tcpip % dev_name).read().strip()
            print((cmd_tcpip % dev_name) , tcpip_info)
            time.sleep(3)
            cfg_info = os.popen(cmd_cfg % dev_name).read().strip().split('\n')
            if not cfg_info :
                print('adb shell cfg command run error ')
                sys.exit(0)
            wlan = 'wlan'
            for cfg in cfg_info :
                
                iter_cfg = cfg.strip()
                if iter_cfg.startswith(wlan) :
                    # print('iter_cfg' , iter_cfg)
                    ips = iter_cfg.split(' ')[-4]
                    ip = ips[:ips.index('/')]
                    # print("ip-->" , ip)
                    conn_info = os.popen(cmd_conn % ip).read().strip()
                    print((cmd_conn % ip) , conn_info)
                    # pass

            # print(cfg_info)

if __name__ == '__main__':
    main()


>python wifi.py

adb connect 192.168.31.229  connected to 192.168.31.229:5555


别名配置:

sudo vi ~/.zshrc

alias wifi='python /usr/local/bin/pys/wifi.py'

source ~/.zshrc


>wifi

adb connect 192.168.31.229  connected to 192.168.31.229:5555


DIY个人智能家庭网关—— python篇之获取手机WIFI连接(上线/下线)状态

如果需要根据自己的手机在连接或断开路由器WIFI时触发某个动作,可以通过iw命令定时查询手机的连接状态,执行如下命令可以列出所有连接到路由器WIFI的设备, root@OpenWrt:~# iw ...
  • luotong86
  • luotong86
  • 2017年02月26日 21:00
  • 1310

android检测网络是否连接,WIFI是否连接

在开发网络应用程序的过程中,有时候我们会忽略检测网络是否连接,而导致程序出错,下面是一种网络检测网络状态的方法: //如果网络已连接,则返回true,否则返回false private b...
  • cao478208248
  • cao478208248
  • 2014年04月10日 11:40
  • 1374

android 手机获取当前连接的wifi配置信息

转:http://blog.csdn.net/swqqcs/article/details/7331564 main.xml [html] view plain copy x...
  • zhangmiaoping23
  • zhangmiaoping23
  • 2016年08月30日 18:20
  • 2874

如何用python 写 adb 命令脚本

最近在学习python,python可以说是写一些小脚本的利器语法简单,做为最著名的就“胶水语言”用它来写一些命令脚本非常的方便。    今天就想如何用python执行adb的命令来安装应用 省了一...
  • u012436608
  • u012436608
  • 2016年03月15日 18:16
  • 8673

Python+ADB实现Android手机QQ自动点赞

使用Python,正则表达式与ADB实现Android手机QQ的自动点赞脚本
  • qq_31922231
  • qq_31922231
  • 2017年05月10日 22:37
  • 5034

Python.PyADB -- Python的ADB交互接口

Python的ADB交互接口 PyADB http://www.open-open.com/lib/view/open1340862229717.html PyADB https://github.c...
  • eofguo
  • eofguo
  • 2016年10月12日 16:29
  • 3130

python 与ADB shell交互

python交互使用subprocess 使设备具有部分Linux命令 python脚本:下载busybox,并且放在与脚本相同的目录下# coding:utf-8 # 这个脚本用于使环境拥有bu...
  • telenewbie
  • telenewbie
  • 2017年03月06日 16:15
  • 5184

Python实现的基于ADB的Android远程工具

本工具为原创,涉及知识: - Python编程 - Tkinter GUI编程 - ADB通信机制 代码已经开源: https://code.csdn.net/codehat/and...
  • codehat
  • codehat
  • 2014年11月03日 18:30
  • 2085

Python调用adb命令实现对多台设备同时进行reboot

Python调用adb命令实现对多台设备同时进行reboot 首先,adb实现对设备的reboot命令是:adb reboot . 但是如果是两台/多台设备的时候,需要声明serial nu...
  • laozhuxinlu
  • laozhuxinlu
  • 2017年05月12日 14:50
  • 2671

学习了一下python中使用adb命令的方法

在python中使用adb命令,可以导入os模块。1 简单的adb命令。如:os.system('adb version')2 稍微复杂的adb命令。如:os.system('adb shell "d...
  • quikai1981
  • quikai1981
  • 2018年01月02日 15:28
  • 893
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:adb connection python 一键 wifi 连接
举报原因:
原因补充:

(最多只允许输入30个字)