前言
在移动端进行编程开发一直是许多技术爱好者的需求。虽然市面上存在 Qpython 等应用,但它们往往受限于模块支持(例如不支持 lxml),难以满足爬虫、文档解析等复杂任务的需求。Termux 作为一个无需 Root 即可运行的 Android 终端仿真器,提供了完整的 Linux 环境,允许用户通过包管理器安装各种工具,是打造移动 Python 全栈开发环境的理想选择。
本文介绍了在 Android 手机上使用 Termux 进行 Python 开发的完整流程。内容包括 Termux 的安装与源更新、Python 环境配置及 lxml 等依赖库的编译安装、编辑器优化(Vim 与 Jupyter Notebook)、手机目录映射以及后台运行权限设置。通过实际案例演示了爬虫代码与算法题解在移动端终端的运行效果,解决了移动端开发中常见的模块缺失与权限问题,为移动编程提供了可行的解决方案。

在移动端进行编程开发一直是许多技术爱好者的需求。虽然市面上存在 Qpython 等应用,但它们往往受限于模块支持(例如不支持 lxml),难以满足爬虫、文档解析等复杂任务的需求。Termux 作为一个无需 Root 即可运行的 Android 终端仿真器,提供了完整的 Linux 环境,允许用户通过包管理器安装各种工具,是打造移动 Python 全栈开发环境的理想选择。
本文将详细介绍如何在 Termux 中配置 Python 开发环境,包括依赖库编译、编辑器优化、目录映射以及后台运行设置,帮助你在手机上实现高效的代码编写与调试。
Termux 是一个强大的 Android 终端模拟器,它模拟了一个 Linux 文件系统,允许用户直接运行命令行工具。其最大优势在于无需 Root 权限即可使用,且支持通过 apt 或 pkg 命令管理软件包。
下载方式: 推荐通过 F-Droid 或 Google Play 获取最新版本。F-Droid 版本通常更新较快,但下载速度可能较慢;也可以离线下载 APK 文件,但需注意后续无法自动更新。
首次启动 Termux 时,系统会自动进行初始化,此过程需要联网并下载基础工具,建议等待 1-2 分钟。
为了确保获取最新的软件包信息,首先执行以下命令更新源列表:
pkg update
pkg upgrade
Termux 默认提供较新的 Python 版本。安装 Python 解释器及其开发头文件:
pkg install python python-dev
同时升级 pip 包管理器以确保兼容性:
pip install --upgrade pip
在移动端开发爬虫或数据处理脚本时,常遇到 lxml 模块安装失败的问题。这通常是因为缺少底层编译依赖。在 Termux 中,lxml 需要通过 clang 编译器构建。
若遇到 libxml2 相关报错,请依次安装以下依赖:
pkg install libxml2 libxml2-dev libxslt libxslt-dev libiconv libiconv-dev libclang clang libzmq libzmq-dev libc++
pip install lxml
安装完成后,可通过 python -c "import lxml" 验证是否成功。
Termux 默认拥有独立的沙盒目录,为了便于访问手机本地文件(如图片、脚本),需要将手机存储挂载到 Termux 环境中。
初始化存储权限: 输入以下命令授权访问共享存储:
termux-setup-storage
完成后,会在 $HOME/storage/shared 下生成链接。
创建代码目录映射: 为了方便管理项目,可以创建一个符号链接指向手机上的代码文件夹:
ln -s /data/data/com.termux/files/home/storage/shared/Codes_Repository ~/Codes
这样,你就可以在 Termux 中直接操作手机本地的代码文件。
Linux 环境下,Vim 是经典的编辑器。在 Termux 中安装 Vim 并配置编码支持:
pkg install vim vim-python
vim .vimrc
在 .vimrc 中添加以下配置以支持 UTF-8 编码:
set fileencodings=utf-8,gb2312,gb18030,gbk,ucs-bom,cp936,latin1
set enc=utf8
set fencs=utf8,gbk,gb2312,gb18030
:wq
source .vimrc
对于偏好图形化界面的开发者,Jupyter Notebook 是更好的选择。它支持代码执行、可视化展示和 Markdown 笔记。
安装 Jupyter:
pip install jupyter
启动服务:
输入 jupyter notebook 启动服务。由于移动端浏览器限制,建议将生成的 Token URL 复制到手机浏览器打开。
默认情况下,Android 系统会限制后台进程的活动。若要在离开 Termux 界面后继续运行 Web 服务或长脚本,需调整系统设置:
利用 Jupyter Notebook 可以在手机上方便地运行 LeetCode 等平台的练习题,实时查看输出结果,适合碎片时间学习。
配置好 lxml 和 requests 库后,可以直接在 Termux 中运行 Python 爬虫脚本。注意遵守目标网站的 robots.txt 协议,避免高频请求导致 IP 被封禁。
termux-setup-storage 并授予存储权限。Termux 为 Android 用户提供了一个轻量级且功能强大的开发环境。通过合理的配置,你可以将手机变成随身携带的 Python 开发利器。尽管受限于硬件性能,但在日常学习、脚本调试和小规模数据处理场景中,它依然表现出色。

微信公众号「极客日志」,在微信中扫描左侧二维码关注。展示文案:极客日志 zeeklog
使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online
解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online
将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online
将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online
将 HTML 片段转为 GitHub Flavored Markdown,支持标题、列表、链接、代码块与表格等;浏览器内处理,可链接预填。 在线工具,HTML转Markdown在线工具,online