用电脑写了一段python程序抓取某网站的数据。网站数据每天更新,每天的数据都不一样,如果当天没有抓取保存数据,第二天就没有了昨天的数据。有时候人又不在电脑旁,所以希望找到一个能在手机上运行Python程序的软件,随时随地抓取数据。
度娘和谷哥了很久,找到三种类型的转件。
一、在手机上写手机专用的Python程序:Qpython
二、用电脑写可以在手机上运行的app:Kiey和SL4A
三、电脑写的python程序,在手机上运行:Termux
第三类应该说最简单,不需重写程序。
Termux是一款开源且不需要root,运行在Android终端上极其强大的linux模拟器,支持apt管理软件包,完美支持python,ruby,go,nodejs。本文使用termux搭建Nmap、Sqlmap、BBScan、subDomainsBrute、Hydra、RouterSploit等实现支持端口扫描、注入检测、子域名爆破、多协议弱口令爆破、路由器漏洞检测框架多种功能的Android手机渗透神器。
官方简介
实际上是个手机端的Linux模拟器。能运行python程序。
为了配置环境,吃了不少苦头,写了这篇让他人少走弯路。
1、软件下载
在酷安网上有termux可以下载,目前更新到了0.53版。
github上有源码:记不清了,可以自己搜一下
官网地址 https://termux.com/
2、python安装
下载安装后要首先更新包,命令行输入以下命令
apt update
apt upgrade
安装python主程序和必要模块,python3和python2都安装
apt install python python-dev python2 python2-dev
3、安装python模块
(1)安装BeautifulSoup,requests
pip install BeautifulSoup4 requests
(2)安装lxml模块
apt-get install clang
apt-get install libxml2 libxml2-dev libxslt libxslt-dev
pip install lxml
有可能安装不上,可以先把下面的(3)中的apt部分先安装,在来试试pip install lxml
(3)安装scrapy模块(必须先安装lxml才行)
apt install openssl libffi libffi-dev
pip install scrapy
(4)安装科学计算相关模块numpy和pandas
apt install clang python python-dev fftw libzmq libzmq-dev freetype freetype-dev libpng libpng-dev pkg-config
LDFLAGS=" -lm -lcompiler_rt" pip install numpy matplotlib pandas jupyter
-------------------------------------------------
这里注意:numpy最新版1.13.1有问题,安装不上,需要指定安装1.12.1版
LDFLAGS=" -lm -lcompiler_rt" pip install numpy==1.12.1
【安装时间会有点长,主要是编译过程,几个模块可以一个一个来装,numpy是基==1.12.1础库,装matplotlib和pandas前必须先装】
(5)安装其他常用模块
直接pip安装,比如
pip install nltk
pip install demjson
好了,基本上可以运行python大部分程序了。。。。。。。
最后,把以上整理成一个.sh文件,在命令行运行bash termux_python.sh一键安装
#Termux安装python所需要的一些库
apt update
apt upgrade
apt install python python-dev python2 python2-dev
apt-get install clang
apt-get install libxml2 libxml2-dev libxslt libxslt-dev
apt install openssl libffi libffi-dev
apt install openssl openssl-tool openssl-dev
apt install clang g++ libxml2-dev libxslt-dev python python-dev
apt install clang python python-dev
apt install fftw libzmq libzmq-dev
apt install freetype freetype-dev libpng libpng-dev pkg-config
pip install BeautifulSoup4 requests
pip install lxml
pip install scrapy
#pip install numpy==1.12.1
#最新的1.13.1有问题,安装不上
LDFLAGS=" -lm -lcompiler_rt" pip install numpy==1.12.1
LDFLAGS=" -lm -lcompiler_rt" pip install matplotlib pandas jupyter
pip install ipython
pip install demjson tushare colorama
网友评论
文件路径一般为/sdcard/xxx/
一般/sdcard指的是内置存储卡,需要你把py文件放到内置存储卡上,如果你的手机有外置SD卡的话。不同的手机有时候也会不一样,/sdcard目录有时候是外置存储卡,需要你自己去测试看看。
当然,你也可以用cd切换到py文件所在目录,再直接python xxx.py
只是比较麻烦而已。
linux命令:cd切换目录,ls显示当前目录下的文件(类似于windows下的dir)
后来查了下 说是少了libcrypt-dev
使用 apt-get install libcrypt libcrypt-dev能继续安装啦
(第二部 的:apt install python python-dev python2 python2-dev 是什么意思)
解决办法:安装pip工具,apt install pip
(第二部 的:apt install python python-dev python2 python2-dev 是什么意思)
答:就是安装python2、python3这两个软件和他们的支持环境