Lamda(FIRERPA):一个 Python 客户端跑通 Android UI 自动化与一键抓包
2026/9/20 17:55:31 网站建设 项目流程

Lamda(FIRERPA):一个 Python 客户端跑通 Android UI 自动化与一键抓包

【免费下载链接】lamdaAndroid Full-Stack Device Control Platform: WebRTC/H.264 remote desktop, UI/OCR/image-matching automation, one-click MITM, built-in Frida, proxy/VPN/frp/P2P networking, MCP/Agent, 160+ APIs, designed for multi-device clusters and engineered deployments.项目地址: https://gitcode.com/GitHub_Trending/la/lamda

lamda(FIRERPA)是一个 Android 设备控制与自动化平台:服务端 lamda-server 直接运行在设备上,PC 端用 Python 客户端库统一调度,UI 自动化、远程桌面、一键 MITM 抓包、内置 Frida、代理组网都在同一条链路里完成。适合做安全测试、逆向分析和真机批量自动化的开发者。

🎯 适用场景

  • 需要反复启动 App 并点击、输入、滑动等操作真机界面 → 它能用一个 Python 脚本完成
  • 需要在 Android 设备上抓包 → 一键 MITM 自动装系统根证书和代理,退出时自动恢复网络
  • 想用 Frida Hook 但不想单独部署 frida-server → 服务端内置最新版 Frida,终端内直接用

📦 一行命令安装 lamda 客户端

前提:设备上已部署 lamda-server,支持 App 一键部署(Root 或 Shizuku)、Magisk 模块开机自启、手动解压三种落地方式。

pip install lamda

安装 PC 端客户端,要求 Python 3.6+。需要 Frida 能力时安装pip install "lamda[full]"即可,会附带 frida 17.x 依赖。

装好后用下面这段代码验证链路,它连接设备并打印系统设置应用的版本号:

from lamda.client import Device d = Device("localhost") # 连接设备,默认端口 65000 app = d.application("com.android.settings") print(app.is_installed()) # True 表示设备在线且应用存在 print(app.info().versionName) # 输出应用版本号

能打印出版本号,说明 PC 到设备的 gRPC 链路已通,可以开始写自动化。

🖱️ 按任务组织的核心用法

启动 App 并自动完成一次搜索

需求:打开淘宝,在搜索框输入关键词并点搜索。官方示例examples/search_in_taobao.py的核心几行如下,选择器支持 text、resourceId、description 等匹配:

app = d.application("com.taobao.taobao") app.stop() import time; time.sleep(1.5) app.start(); time.sleep(10) d(description="搜索栏").click() d(resourceId="com.taobao.taobao:id/searchEdit").set_text("苹果手机") d(resourceId="com.taobao.taobao:id/searchbtn").click()

执行后设备自动完成整个搜索流程,无需人工点击。

等待元素出现再操作,避免竞态

需求:搜索按钮要等输入框激活后才出现,直接点会失败。

d(resourceId="com.taobao.taobao:id/searchbtn").wait_for_exists(15 * 1000)

等待 15 秒内元素出现,返回前脚本才继续执行,慢设备也不会点空。

一键抓包而不手工装证书切代理

需求:临时抓某个 App 的流量,退出后设备网络要自动还原。

python tools/startmitm.py

该脚本自动安装系统级根证书、配置代理,退出时恢复设备网络,支持全局或按包名抓包;Windows 上还有免 Python 的startmitm.exe可用。

🧩 进阶:复制一个可改造的真实脚本

把包名、选择器和关键词替换成你的目标应用即可用。这是官方示例的完整骨架,含版本校验与状态等待:

# 把包名、resourceId、description 和关键词替换成你自己的 from lamda.client import Device import time d = Device("localhost") # 替换为你的设备地址 app = d.application("com.taobao.taobao") if not app.is_installed(): print("taobao app is not installed"); exit(1) if app.info().versionName != "10.48.0": print("please install taobao 10.48.0"); exit(1) app.stop(); time.sleep(1.5) app.start(); time.sleep(10) d(description="搜索栏").click() d(resourceId="com.taobao.taobao:id/searchbtn").wait_for_exists(15 * 1000) d(resourceId="com.taobao.taobao:id/searchEdit").set_text("替换成你的关键词") d(resourceId="com.taobao.taobao:id/searchbtn").click() d(description="筛选").wait_for_exists(15 * 1000) d().swipe() # 简单滑动一页

日常调试时还可以直接进入交互式控制台,随手验证 API 调用:

python -m lamda.client -port 65000

进入 Python REPL 并已建立设备连接,-port指定服务端口,默认 65000。

⚠️ 常见问题排查

现象原因一行解法
连接 Device 超时设备未部署 lamda-server 或地址/端口不对确认设备服务已启动,检查Device()地址与默认端口 65000
示例脚本报 please install taobao 10.48.0 并退出设备应用版本与示例要求不一致设备安装 10.48.0,或删掉示例中的版本校验段
import frida 报模块缺失默认安装不含 frida 依赖pip install "lamda[full]"
Windows 无 Python 环境抓不了包缺少 Python 运行时改用自带的startmitm.exe
pip 安装报 Requires-Python本机 Python 低于 3.6升级到 Python 3.6+ 重新安装

📋 附录:命令速查

  • pip install lamda— 安装 PC 端客户端(Python 3.6+)
  • pip install "lamda[full]"— 附加安装 frida 17.x 依赖
  • Device("localhost")— 连接设备,默认端口 65000
  • d.application(pkg)— 获取应用对象
  • app.is_installed() / app.stop() / app.start()— 检查安装 / 停止 / 启动应用
  • d(text=..., resourceId=..., description=...)— 按控件属性定位元素
  • element.click() / element.set_text("...")— 点击 / 输入文本
  • element.wait_for_exists(15000)— 等待元素出现,单位毫秒
  • d().swipe()— 执行一次滑动
  • python -m lamda.client— 进入交互式控制台
  • 源码文件:tools/startmitm.py 一键抓包脚本、examples/search_in_taobao.py 搜索示例、examples/activity_jump.py 跳转示例、extensions/ MCP 扩展模块

下一步:把examples/search_in_taobao.py原样跑通一遍,再把选择器换成你目标应用的控件。

【免费下载链接】lamdaAndroid Full-Stack Device Control Platform: WebRTC/H.264 remote desktop, UI/OCR/image-matching automation, one-click MITM, built-in Frida, proxy/VPN/frp/P2P networking, MCP/Agent, 160+ APIs, designed for multi-device clusters and engineered deployments.项目地址: https://gitcode.com/GitHub_Trending/la/lamda

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询