python3 adb 获取设备序列号的实现

python3 adb 获取设备序列号

import subprocess
def deal_cmd(cmd):
	pi = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE)
	# print(pi.stdin.read())
	return pi.stdout.read()

def deal_result():
	result = deal_cmd('adb devices')
	result = result.decode("utf-8")
	if result.startswith('List of devices attached'):
		# 查看连接设备
		result = result.strip().splitlines()
		# 查看连接设备数量
		device_size = len(result)
		if device_size > 1:
			device_list = []
			for i in range(1, device_size):
				device_detail = result[1].split('\t')
				if device_detail[1] == 'device':
					device_list.append(device_detail[0])
				elif device_detail[1] == 'offline':
					print(device_detail[0])
					return False, '连接出现异常,设备无响应'
				elif device_detail[1] == 'unknown':
					print(device_detail[0])
					return False, '没有连接设备'
			return True, device_list
		else:
			return False, "没有可用设备"

Python 获取设备名及地址

1. 查询本机的设备名及IP地址,打开Python 3.6(32-bit),输入:

import  socket
host_name = socket.gethostname()
print(" Host name: %s" %host_name)
print(" IP address: %s" %socket.gethostbyname(host_name))

2. 查询本地的设备名及IP地址,使用内置的类方法,定义成一个独立的函数print_device_info()

import  socket
def  print_device_info():
      host_name = socket.gethostname()
      print(" Host name: %s"  %host_name)
      print(" IP address: %s"  %socket.gethostbyname(host_name))
if  __name__=='__main__':
      print_device_info();

3. 查询远程设备名及IP地址,定义一个函数print_device_remote_info()

import  socket
def  print_device_remote_info():
      host_name = 'home.lenovo'
      print(" Host name: %s"  %host_name)
      print(" IP address: %s"  %socket.gethostbyname(host_name))
if  __name__=='__main__':
      print_device_remote_info();

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • Python简单获取网卡名称及其IP地址的方法【基于psutil模块】

    本文实例讲述了Python简单获取网卡名称及其IP地址的方法.分享给大家供大家参考,具体如下: windows上想知道网卡和IP地址,可以使用ipconfig命令,在linux上可以使用ifconfig命令,得到输出后,可以解析输出内容,我要介绍的方法更为简单,只需要安装一个名为psutil的第三方库即可 # -*- coding: utf-8 -*- #! python2 import psutil #获取网卡名称和其ip地址,不包括回环 def get_netcard(): netcard_

  • python实现根据主机名字获得所有ip地址的方法

    本文实例讲述了python实现根据主机名字获得所有ip地址的方法.分享给大家供大家参考.具体实现方法如下: # -*- coding: utf-8 -*- import sys, socket result = socket.getaddrinfo('www.google.com', None, 0, socket.SOCK_STREAM) counter = 0 for item in result: print "%-2d: %s" % (counter, item[4]) cou

  • python简单获取本机计算机名和IP地址的方法

    本文实例讲述了python简单获取本机计算机名和IP地址的方法.分享给大家供大家参考.具体实现方法如下: 方法一: >>> import socket >>> hostname = socket.gethostname() >>> print hostname china-43226208c >>>ip = socket.gethostbyname(hostname) >>>print ip 192.168.3.19

  • python3 adb 获取设备序列号的实现

    python3 adb 获取设备序列号 import subprocess def deal_cmd(cmd): pi = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE) # print(pi.stdin.read()) return pi.stdout.read() def deal_result(): result = deal_cmd('adb devices') result = result.decode("utf-8

  • Android应用获取设备序列号的方法

    软硬件环境 Macbook Pro MGX 72 Android studio 2.1.2 Android 5.1.1 前言 上一篇介绍了如何获取ethernet的MAC地址,对于厂商来讲,除了MAC号,还有一项数据也很重要,那就是机器序列号,它是机器出厂时确定的,也是主要标识,每台机器都不一样. 要想获取到序列号,必须要先知道序列号从哪里来,写到了哪里.一般情况下,序列号都是厂商自己定义的一串字串,字串中的某几位会有不同含义,比如厂商的ID.出厂时间.机器类型等,另外,运营商定义的序列号几乎也

  • iOS 获取设备唯一标示符的方法详解

    在开发中会遇到应用需要记录设备标示,即使应用卸载后再安装也可重新识别的情况,在这写一种实现方式--读取设备的UUID(Universally Unique Identifier)并通过KeyChain记录. 首先iOS中获取设备唯一标示符的方法一直随版本的更新而变化.iOS 2.0版本以后UIDevice提供一个获取设备唯一标识符的方法uniqueIdentifier,通过该方法我们可以获取设备的序列号,这个也是目前为止唯一可以确认唯一的标示符.好景不长,因为该唯一标识符与手机一一对应,苹果觉得

  • 浅谈android获取设备唯一标识完美解决方案

    本文介绍了浅谈android获取设备唯一标识完美解决方案,分享给大家,具体如下: /** * deviceID的组成为:渠道标志+识别符来源标志+hash后的终端识别符 * * 渠道标志为: * 1,andriod(a) * * 识别符来源标志: * 1, wifi mac地址(wifi): * 2, IMEI(imei): * 3, 序列号(sn): * 4, id:随机码.若前面的都取不到时,则随机生成一个随机码,需要缓存. * * @param context * @return */ p

  • 详解Android获取设备唯一ID的几种方式

    先来看看几种比较单一的方式: IMEI 方式:TelephonyManager.getDeviceId(): 问题 范围:只能支持拥有通话功能的设备,对于平板不可以. 持久性:返厂,数据擦除的时候不彻底,保留了原来的标识. 权限:需要权限:Android.permission.READ_PHONE_STATE bug: 有些厂家的实现有bug,返回一些不可用的数据  Mac地址 ACCESS_WIFI_STATE权限 有些设备没有WiFi,或者蓝牙,就不可以,如果WiFi没有打开,硬件也不会返回

  • iOS获取设备唯一标识的8种方法

    8种iOS获取设备唯一标识的方法,希望对大家有用. UDID UDID(Unique Device Identifier),iOS 设备的唯一识别码,是一个40位十六进制序列(越狱的设备通过某些工具可以改变设备的 UDID),移动网络可以利用 UDID 来识别移动设备. 许多开发者把 UDID 跟用户的真实姓名.密码.住址.其它数据关联起来,网络窥探者会从多个应用收集这些数据,然后顺藤摸瓜得到这个人的许多隐私数据,同时大部分应用确实在频繁传输 UDID 和私人信息. 为了避免集体诉讼,苹果最终决

  • C#利用win32 Api 修改本地系统时间、获取硬盘序列号

    C#利用win32 Api 修改本地系统时间.获取硬盘序列号,可以用于软件注册机制的编写! 复制代码 代码如下: using System; using System.Collections.Generic; using System.Text; using System.Runtime.InteropServices; namespace Fengyun {     public class Win32     {         #region 修改本地系统时间         [DllIm

  • Android获取设备CPU核数、时钟频率以及内存大小的方法

    本文实例讲述了Android获取设备CPU核数.时钟频率以及内存大小的方法.分享给大家供大家参考,具体如下: 因项目需要,分析了一下 Facebook 的开源项目 - Device Year Class. Device Year Class 的主要功能是根据 CPU核数.时钟频率 以及 内存大小 对设备进行分级.代码很简单,只包含两个类: DeviceInfo -> 获取设备参数, YearClass -> 根据参数进行分级. 下表是 Facebook 公司提供的分级标准,其中 Year 栏表

  • Android编程获取设备MAC地址的实现方法

    本文实例讲述了Android编程获取设备MAC地址的实现方法.分享给大家供大家参考,具体如下: /** * 获取设备的mac地址 * * @param ac * @param callback * 成功获取到mac地址之后会回调此方法 */ public static void getMacAddress(final Activity ac, final SimpleCallback callback) { final WifiManager wm = (WifiManager) ac .get

  • Powershell实现获取电脑序列号功能脚本分享

    支持所有版本. 先前的技巧中我们知道如何从戴尔序列号去查询保修信息.其它供应商也有类似服务. 下面一段代码能获取电脑序列号: 复制代码 代码如下: $ComputerName = $env:COMPUTERNAME   $serial = (Get-WmiObject -ComputerName $ComputerName -Class Win32_BIOS).SerialNumber "Your computer serial is $serial"

随机推荐