相信大部分安卓用户都用过qpython,一款手机Python编辑器。之前研究过这个工具一段时间,但是被一个简单的爬虫极度失望。Qpython不支持Lxml,但lxml是python中最低的模块,需要同时用于爬虫和文档解析。所以,
Termux应运而生。
Termux不仅可以帮助您学习和使用Linux系统,还可以通过安装各种插件作为我们的python全栈开发工具!今天,我将向您展示如何在手机上玩。
Python 爬虫,jupyter notebook,git代码托管,Web开发等等!
Termux介绍
Termux是一个安卓终端Linux环境模拟器。最主要的是不用root就可以直接安装使用。您可以使用该工具推荐的apt包管理器或pkg命令来自定义和安装其他工具。还有哪些工具?你可以在Linux下使用任何你能想到的工具。
尝试,大部分都可以直接安装,但是也有一些工具需要你去扭转,比如在手机里安装mysql数据库!
:https://wiki.termux.com/wiki/Main_Page.Termux,官网维基
Termux.维基
在官网可以看到推荐的下载方式有谷歌Play和F-Droid。谷歌Play安装在手机上太麻烦了,所以推荐F-的。
机器人,虽然它很慢.当然,你可以离线从Termux下载apk文件,虽然没有办法获得更新。安装果味橙很容易。下载F-
Droid,安装后搜索Termux,然后下载。
Python开发者桌面
刚才说到Termux's简介和下载方法,下载完成了,只安装了这个工具,没有我们的Python开发者桌面.当第一次安装并输入Termux时,它将被初始化并等待1-2分钟(此时,需要在线下载工具)。以下截图:
安装Termux.png.
之后,就是我们的DIY时间了!
1.更新源:
为了获得最新的插件信息,我们需要更新镜像源列表。
1kg更新
2kg升级
3pkg安装python python-dev
2.安装python及pip
系统为我们安装了最新的python3.7.4版本,紧跟时尚潮流。
1kg安装python python-静态
2pip安装-升级pip
3.安装依赖插件
这一步已经受阻很久了。我们可以看到互联网上有很多关于lxml安装的帮助帖子,无论是linux还是我们的Termux.
='https://p5.toutiaoimg.com/large/pgc-image/856f250221ef4abdaff192722d69d9b4' alt='分享在手机上敲 Python 代码几款App' />lxml安装报错
按照很多热心网友的回答去尝试安装插件,和其他解决办法,都没有成功。
多数的报错是提示libxml2插件未安装,可明明安装了,之后查阅资料了解python在使用该插件的使用需要通过clang插件的编译后才能使用,但是安装后有提示conv.h的文件无法获取等等。这个问题断断续续卡了我两天你的时间,光卸载安装Termux就搞了几次,每月20G的流量我就剩5G了…最终找齐了所有插件总结给大家:(最新安装依赖详见留言)
1pkg install libxml2 libxml2-dev libxslt libxslt-dev libiconv libiconv-dev
libclang clang libzmq libzmq-dev libc++
2pip install lxml
lxml安装成功
目录说明
首先我们输入termux-setup-storage将手机目录共享给termux,完成后会在home目录下多出一个storage的文件夹。
目录说明
了解Linux的朋友应该比较清楚创建链接与挂载点的问题,手机的目录在Termux的/data/data/com.termux/files/home/storage/shared内。那么同样的,我们可以将手机的代码目录映射到Termux中。命令如下:
ln -s /data/data/com.termux/files/home/storage/shared/Codes_Repository ~/Codes
然后,我们将小说下载器的脚本Novels.py丢到手机的Codes_Repository,再去Termux中看看是否同步
目录共享
无意中暴露了我的Mate 20X,哈哈…之所以当时要买7.2英寸的20x就是为了将手机打造成python开发工具。
优化编辑器
大家都知道Linux环境下开发python,大神们都推荐的是vi,用其他的工具都显得不高端…那么如何优化我们的编辑器呢?安装vi的哥哥vim,针对vim下开发python安装vim-
python 代码
1# 安装vim vim-python
2pkg install vim vim-python
3# 创建vim配置文件
4vim .vimrc
5# 添加 vim 配置文件
6set fileencodings=utf-8,gb2312,gb18030,gbk,ucs-bom,cp936,latin1
7set enc=utf8
8set fencs=utf8,gbk,gb2312,gb18030
9# 保存
10:wq
11# 立即生效
12source .vimrc
来看看vim-python的编码效果:
vim-python
vim-python
手机编程
最后来说说Termux的python开发问题,今天有朋友问到,Termux下写Python代码应该用什么编辑器呢?只用vim没有代码联想,写起来很麻烦…
你可以尝试使用Jupyter Notebook …
如果是按照我之前教程安装的Termux,那么直接pip install jupyter即可完成安装…
Termux权限设置
默认情况下Termux安装到手机后,是没有后台运行权限的,即如果你离开Termux桌面,那么将无法继续使用相关的web项目。你需要关闭手机启动管理的自动管理,然后添加上允许后台活动。
Termux设置
之后再输入 jupyter notebook ,即可达到后台运行的效果。
jupyter notebook
成功启动jupyter notebook后,会在命令行生成一个带token的url,复制它到你的手机浏览器上,现在在你的手机上好好练习代码吧…
代码运行
一道Leetcode上的练习题,在jupyter notebook上运行是不是完美….
爬虫代码运行
怎么样,不管是原生的vim还是大家喜爱的jupyter notebook,展示效果还算不错吧!再让我们执行一段爬虫代码