原标题:将安卓手机打造成你的python全栈开发利器

超神利器

相信多数安卓用户都使用过Qpython这款移动端的Python编辑器吧?之前我也研究过一阵子这个工具,但因为一次简单的爬虫让我对它失望之极。Qpython不支持lxml这个模块,然而python中lxml作为最底层的模块,不管是爬虫还是文档解析,都需要使用它。 所以,Termux应运而生。

Termux不仅 可以帮助你学习和使用Linux系统,更可以 通过安装各种插件,当做我们python全栈开发利器!今天我就带大家了解下,如何在手机上玩转 Python 爬虫、 jupyter notebook、git代码托管、Web开发等等全套炫酷的功能!

Termux介绍

Termux是一个Android终端的Linux环境仿真器。主要的是它无需root,就可以直接进行安装使用。可以使用apt包管理器或者这个工具推荐的pkg命令来定制安装其他的工具。何为其他工具?Linux下你能想到的工具,都可以去 尝试,多数都可以直接安装,但也有部分工具需要你转个弯,比如在手机中安装mysql数据库!

Termux的Wiki官网:

https://wiki.termux.com/wiki/Main_Page

Termux的Wiki

官网中可以看到推荐的下载方式是Google Play 和F-Droid。Google Play在手机上安装太麻烦了,所以推荐F-Droid,虽然它比较慢…当然你可以离线下载Termux的apk文件,虽然这样没办法获取更新。安装过程比较简单,下载F-Droid,完成安装后搜索Termux,下载即可。

Python开发者桌面

刚才说到Termux的简单介绍与下载方式,那么下载完成,安装的只是这个工具,而非我们的 Python开发者桌面。Termux安装完成首次进入会进行相关的初始化工作,等待1-2分钟即可(此时需要联网下载工具)。截图如下:

安装Termux.png

之后就该进入我们的DIY时间了!

1.

更新源:

为了我们能获取到最新的插件信息,需要更新一下镜像源列表

1pkg update

2pkg upgrade

3pkg install python python-dev

2.

安装python及pip

系统为我们安装了最新的python3.7.4版本

1pkg install python python-static

2pip install --upgrade pip

3.

安装依赖插件

这一步阻塞了很长的时间,可以看到网上针对lxml的安装不管是linux系统还是咱们的Termux,都存在这很多的求助帖。

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,展示效果还算不错吧!再让我们执行一段爬虫代码

模块安装与使用

可以看到,第一次运行提示缺失requests模块,通过pip安装后,再次执行,爬取小说网站,下载了最近5章的小说内容。

Termux下使用git

既然要做成python开发者桌面怎么能少了git工具的使用?

1pkg install git

2git config -- globaluser.name "Usernam"

3git config -- globaluser.email "email-addr"

4git clone https://github.com/BreezePython/FlaskTests.git

Git

image.png

现在我们从手机上下载代码,进行安装 1#如果为安装pipenv,需要先进行安装操作

2pip install pipenv

3#克隆代码

4git clone https://github.com/BreezePython/WeatherForecast.git

5#进入代码目录

6cd WeatherForecast

7#安装虚拟机及依赖模块

8pipenv install

9#进入虚拟机

10pipenv shell

11#启动flask

12flask run

因为代码是通过pipenv进行开发的,所以从安装到使用,你无需关注虚拟环境到底涉及什么模块,需要怎么安装,没错pipenv就是这么简单粗暴!放几张图吧:

下载代码与安装虚拟环境

别说,安装的这个小蛇还挺可爱的

安装插件并启动flask

最终看看手机运行是否正常吧(恩,明天天气不错):

手机运行

有了这一套全家桶,哪怕是出门约会也可以随时随地写代码啦

作者:王翔

来源:清风Python

自学编程的过程是很痛苦的,有的时候没有人指导,慢慢的会变成从入门到放弃, 可能懂的人只要花1-2分钟就能帮你解决的问题,不懂的人要折腾几个小时。最近不断的有小伙伴希望我们建一个 交流群,有想加入的同学,可以跟小助手联系。这个群的目的如下:

1. 帮助初学者的一起解惑一些入门的Python问题

2. 我们经常有答题送书的福利,有了群更容易联系到大家

3.已经在我们小密圈群的同学就不要再加入了,避免重复入群

所有入群的小伙伴,我们一一筛选,会根据一些后台数据,进行筛选的!生面孔或者不常来的,我们一概谢绝入内。

入群请找菜鸟哥

暗号:【入群】

小助手在放假ing,可能回复不那么及时,望见谅哈

责任编辑:

termux pythonlxml安装_将安卓手机打造成你的python全栈开发利器相关推荐

  1. python利器手机版-将安卓手机打造成你的python全栈开发利器

    超神利器- 相信多数安卓用户都使用过Qpython这款移动端的Python编辑器吧?之前我也研究过一阵子这个工具,但因为一次简单的爬虫让我对它失望之极.Qpython不支持lxml这个模块,然而pyt ...

  2. 将安卓手机打造成你的python全栈开发利器

    超神利器 很多人学习python,不知道从何学起. 很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手. 很多已经做案例的人,却不知道如何去学习更加高深的知识. 那么针对这三类人,我 ...

  3. 手机下载Python_将安卓手机打造成 Python 全栈开发利器

  4. python全栈开发下载_python全栈开发神器 - 『精品软件区』 - 吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn...

    将安卓手机打造成你的python全栈开发利器 超神利器- 相信多数安卓用户都使用过Qpython这款移动端的Python编辑器吧?之前我也研究过一阵子这个工具,但因为一次简单的爬虫让我对它失望之极.Q ...

  5. python视频网站项目_价值2400元的python全栈开发系列Flask Python Web 网站编程视频

    2 e/ b4 F1 c' H$ D! X 价值2400元的python全栈开发系列Flask Python Web 网站编程视频-优品课堂' z3 _1 Y7 ]6 j4 z # p# r# g* ...

  6. 学习笔记之Python全栈开发/人工智能公开课_腾讯课堂

    Python全栈开发/人工智能公开课_腾讯课堂 https://ke.qq.com/course/190378 https://github.com/haoran119/ke.qq.com.pytho ...

  7. python全栈开发要学些什么_战争热诚的python全栈开发之路

    从学习python开始,一直是自己摸索,但是时间不等人啊,所以自己为了节省时间,决定报个班系统学习,下面整理的文章都是自己学习后,认为重要的需要弄懂的知识点,做出链接,一方面是为了自己找的话方便,一方 ...

  8. python全栈开发工程师_【2018重磅巨献】老男孩Python高级全栈开发工程师第三期...

    2018年老男孩python全栈第三期老男孩python全栈3期 老男孩教育Python全栈开发为国内首家专注python全方面开发的教育机构 老男孩Python全栈第三期课程详细目录,高清不加密! ...

  9. python全栈开发工程师招聘_如何当一名优雅的Python全栈开发工程师?

    上海达内Python培训好就业吗?这就要看看Python的发展前景了.python前景当然不错,数据分析.机器学习.爬虫.运维.Web,都是很好的方向--那么还有一个问题,Python入门难不难?其实 ...

最新文章

  1. 汇编语言随笔(15)- 对键盘输入进行处理(int 9 和 int 16h 中断例程)
  2. 我是如何把VC6一直用到2016年的
  3. [javascript] Date 时间精确到天
  4. nosql-redis学习 数据类型
  5. PHP-PDO参数绑定问题
  6. api函数原型大全_如何使用您的API优先平台来使原型做好生产准备
  7. 虚拟机centOs Linux与Windows之间的文件传输
  8. linux php yii安装教程,Linux 安装php 5.4 – yii2 环境
  9. SetTimer函数的用法
  10. sql连接查询语句中on、where筛选的区别总结
  11. 【电大题酷】【5】2269个人与团队管理
  12. Beats: 使用 Filebeat 进行日志结构化 - Python
  13. 安装部署(七) HBase集群安装部署与测试
  14. 阿里云最新最全扩容方法
  15. Zigzag和蛇形矩阵
  16. 关于大数据技术的演讲_大数据核心技术介绍:大数据处理技术
  17. Linux配置 难记的命令 和 Sheel编程学习总结常用备注
  18. PIM-DM--理论详解
  19. HCIP第十四天笔记
  20. NLP模型开发平台在舆情分析中的设计和实践

热门文章

  1. Python的位置参数、默认参数、关键字参数、可变参数之间的区别
  2. visual studio安装python插件_Visual Studio 2012 Ultimate 上安装 Python 开发插件 PTVS
  3. C语言socket bind()函数(为socket套接字关联了一个相应的地址与端口号)
  4. 海康摄像头 海思AI芯片(Hi35XX): 图像jpg转.bgr
  5. Xshell修改颜色(xshell配色)
  6. python 两个内置函数——locals 和globals(名字空间)批量以自定义变量名创建对象
  7. python 查看PIL包下的 Image.py 模块时 import _builtin__显示 python version 3.6 does not have module __builtin__
  8. PyQt4编程之简短地做出多个选择框
  9. Commit failed with error: pathspec 'src/main/java/com/leo/demo/juctest/test.java' did not match any
  10. 如何理解java中String的不可变性