`

python中利用adb shell 控制手机,完美解决中文输入问题

阅读更多
1.连接手机, 打开开发者选项, 连接USB, (如果需要记录手机浏览的数据,下载安装,配置fiddler,  配置代理  参照我以前写的这个文章就行http://st4024589553.iteye.com/blog/2363667)  (当然你也可以安装一个模拟器来玩玩,一样的,可以操控多个模拟器)

2.要解决直接在APP输入中文,而不是打拼音,选汉字,这里需要为手机或者模拟器安装一个apk,就是一个老外写的输入法, 安装包我自己上传了,你们自己下载吧, 安装好后,在手机中进入 语言和输入法, 设置为默认输入法即可  (模拟器也是一样的)。


3.下载美团外卖APP,进入首页

代码================================如下:
# coding=utf-8
'''
python程序控制手机, 配置代理, 记录手机操作过程浏览的数据

@author: chenkai
'''
import os
import sys
import time

def main():
    #os.system("adb shell input keyevent 3")
    os.system("adb shell input tap 118 120")
    time.sleep(1)
    os.system("adb shell input tap 259 248")
    time.sleep(2)
    text="紫金大厦".encode('cp936')
    os.system("adb shell am broadcast -a ADB_INPUT_TEXT --es msg '"+text+"'")
    ##os.system("adb shell input text 'aa'")
    time.sleep(1)
    os.system("adb shell input tap 94 264")
    time.sleep(1)
    os.system("adb shell input tap 118 668")
    time.sleep(1)
    os.system("adb shell input swipe 432 1456 432 291")
    time.sleep(1)
    os.system("adb shell input tap 118 120")
    ''''开始第二次定位'''
    os.system("adb shell input tap 118 120")
    time.sleep(1)
    os.system("adb shell input tap 259 248")
    time.sleep(2)
    text="苏州街".encode('cp936') #必须转码,不然输入乱码
    os.system("adb shell am broadcast -a ADB_INPUT_TEXT --es msg '"+text+"'")
    ##os.system("adb shell input text 'aa'")
    time.sleep(1)
    os.system("adb shell input tap 94 264")
    time.sleep(1)
    os.system("adb shell input tap 118 668")
    time.sleep(1)
    os.system("adb shell input swipe 432 1456 432 291")
    time.sleep(1)
    os.system("adb shell input tap 118 120")
    
if __name__ == '__main__':
    main()
   

===============================操作说明
adb shell input text <string>
adb shell input keyevent <key code number or name>
adb shell input tap <x> <y>
adb shell input swipe <x1> <y1> <x2> <y2>
       
  1. keyevent指的是Android对应的keycode,比如home键的keycode=3,back键的keycode=4.
   
分享到:
评论

相关推荐

    Python脚本利用adb进行手机控制的方法

    ### Python脚本利用ADB进行手机控制的方法 #### 一、ADB相关命令详解 ADB(安卓调试桥)是一款功能强大的命令行工具,它允许用户与安卓设备进行通信。本文将详细介绍如何使用Python脚本来控制Android设备,并提供了...

    Python-用busybox加持的功能更加强大的adbshell不需要root

    在标题和描述中提到的"Python-用busybox加持的功能更加强大的adb shell不需要root",是关于如何通过集成BusyBox来增强ADB Shell的功能,而且无需设备具有root权限。 BusyBox是一个开源项目,它集成了许多常见的...

    Python之使用adb shell命令启动应用的方法详解

    本文将详细介绍如何使用Python结合`adb shell`命令来启动Android应用,并讨论一些常见的问题及解决方案。 #### 使用`adb shell`命令启动应用 要使用`adb shell`命令启动Android应用,首先需要了解基本的命令格式...

    Python库 | adb_shell-0.2.3.tar.gz

    4. **输入事件模拟**:`adb_shell`还支持模拟用户输入事件,如点击、滑动等,这对于自动化测试或者编写脚本控制设备行为时特别实用。 5. **异常处理和错误检测**:库内包含了对ADB通信可能出现的错误的处理,如设备...

    python+adb实现安卓手机自动化钉钉打卡功能

    通过以上步骤,我们可以将旧安卓手机转变为自动化打卡工具,利用Python和ADB实现物理打卡,有效地解决日常的钉钉打卡问题,极大地提高了生活效率。不过,此方法仅适用于个人使用,对于大规模或商业应用,可能需要...

    Python库 | adb_shell-0.1.5.tar.gz

    资源分类:Python库 所属语言:Python 资源全名:adb_shell-0.1.5.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059

    Python实现对adb命令封装

    通过在 Python 中封装 ADB 命令,我们可以更加方便地利用 Python 的强大功能来自动化测试、调试或其他脚本任务。 #### ADB 命令简介 ADB 提供了一系列的命令行接口,可用于执行各种操作,如安装应用、启动应用、...

    python 通过adb 查看Android系统状态脚本

    本主题的核心是利用Python编写一个脚本,通过ADB连接到Android设备,监控和收集系统状态信息,例如网络速度,并将这些数据实时传输到PC端的Wireshark.py进行进一步处理。Wireshark是一款网络协议分析器,常用于网络...

    Python库 | adb_shell-0.0.9-py3-none-any.whl

    资源分类:Python库 所属语言:Python 资源全名:adb_shell-0.0.9-py3-none-any.whl 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059

    Python-pythontkadb一个adb小工具

    Python-tkadb通过调用ADB命令,实现了对Android设备的远程控制和信息收集。 4. **CPU信息获取**:利用ADB,可以收集到设备的CPU使用率、核心数、频率等关键数据。这些信息对于监控设备性能和优化应用至关重要。 5....

    Python接收手机短信的代码整理

    Python接收手机短信通常涉及到与移动设备的交互,特别是在自动化测试或特定应用开发中,例如接收验证码。在Android系统中,可以通过编写一个BroadcastReceiver来监听短信接收事件。以下将详细讲解如何实现这一功能。...

    Python如何通过subprocess调用adb命令详解

    在Python编程中,有时我们需要与操作系统进行交互,执行一些系统级别的命令,如控制硬件设备、管理系统文件等。在Android开发中,ADB(Android Debug Bridge)是一个必不可少的工具,用于调试和管理连接到计算机的...

    adb控制播放

    在“adb控制播放”这个主题中,我们主要关注如何使用adb命令来控制手机上的媒体播放功能,这对于调试应用程序或进行自动化测试非常有用。下面我们将详细探讨adb的相关知识点及其在音乐播放控制中的应用。 首先,adb...

    通过python调用adb命令对App进行性能测试方式

    在性能测试中,我们可以利用ADB的shell功能发送命令到设备来收集信息。 1. **监听启动Activity信息**: 使用`adb shell logcat | grep START`命令可以捕获到App启动时的日志,从中提取apk包名和Activity名字,以及...

    使用python通过adb操作Android手机自动上下班打卡

    在本场景中,我们可以通过ADB控制手机执行特定的打卡操作。 2. **Python**:Python是一种高级编程语言,以其简洁的语法和强大的库支持而闻名。在这里,我们将使用Python编写脚本来实现自动打卡功能。 3. **Windows...

Global site tag (gtag.js) - Google Analytics