安卓手机运行python程序
詳情鏈接:https://www.jianshu.com/p/4deba3fad266
用電腦寫了一段python程序抓取某網站的數據。網站數據每天更新,每天的數據都不一樣,如果當天沒有抓取保存數據,第二天就沒有了昨天的數據。有時候人又不在電腦旁,所以希望找到一個能在手機上運行Python程序的軟件,隨時隨地抓取數據。度娘和谷哥了很久,找到三種類型的轉件。一、在手機上寫手機專用的Python程序:Qpython二、用電腦寫可以在手機上運行的app:Kivy和SL4A三、電腦寫的python程序,在手機上運行:Termux、Pydroid3第三類應該說最簡單,不需重寫程序。Termux是一款開源且不需要root,運行在Android終端上極其強大的linux模擬器,支持apt管理軟件包,完美支持python,ruby,go,nodejs。本文使用termux搭建Nmap、Sqlmap、BBScan、subDomainsBrute、Hydra、RouterSploit等實現支持端口掃描、注入檢測、子域名爆破、多協議弱口令爆破、路由器漏洞檢測框架多種功能的Android手機滲透神器。官方簡介實際上是個手機端的Linux模擬器。能運行python程序。為了配置環境,吃了不少苦頭,寫了這篇讓他人少走彎路。1、軟件下載在酷安網上有termux可以下載,目前更新到了0.65版。github上有源碼:https://github.com/termux官網地址 https://termux.com/2.1 安裝基本命令環境下載安裝后要首先更新包,命令行輸入以下命令apt updateapt upgrade更換清華源鏡像,提高速度export EDITOR=viapt edit-sources編輯為# The termux repository mirror from TUNA:deb [arch=all,aarch64] https://mirrors.tuna.tsinghua.edu.cn/termux stable main:wq保存基本命令/軟件的安裝apt updateapt upgradeapt install vim zsh tsu wget git zip neofetch clang make cmake curl python-dev nodejs-dev -y2.2 安裝python安裝python主程序和必要模塊,python3和python2都安裝apt install python python-dev python2 python2-dev3、安裝python模塊(1)安裝BeautifulSoup,requestspip install BeautifulSoup4 requests(2)安裝lxml模塊apt-get install clangtips:近期clang更新到7.0,存在很多問題,好多模塊都不能編譯了。只能期待作者解決了。error: command ‘aarch64-linux-android-clang’ failed with exit status 1
圖片發自簡書App
圖片發自簡書App
apt-get install libxml2 libxml2-dev libxslt libxslt-dev依賴庫python-dev libxml2-dev libxslt-dev libcrypt-dev openssl-dev libffi-devpip install lxml有可能安裝不上,可以先把下面的(3)中的apt部分先安裝,在來試試pip install lxml如果還是安裝不了,有網友說缺少libcrypt支持,運行apt-get install libcrypt libcrypt-dev后再安裝lxml最近在小米沒有存儲卡的手機上,發現在手機目錄無法運行程序,提示permission denied經查閱,運行命令termux-setup-storage就可以了啟用外置存儲pkg install termux-toolstermux-set-storageAndroid6.0以上會彈框確認是否授權,執行這條命令確保termux在最前端(當前Activity)(3)安裝scrapy模塊(必須先安裝lxml才行)apt install openssl libffi libffi-devpip install scrapy如果安裝不上,先試試apt install openssl openssl-tool openssl-dev再安裝scrapy(4)安裝科學計算相關模塊numpy和pandasapt install clang python python-dev fftw libzmq libzmq-dev freetype freetype-dev libpng libpng-dev pkg-configLDFLAGS=" -lm -lcompiler_rt" pip install numpy matplotlib pandas jupyter-------------------------------------------------這里注意:numpy最新版1.13.1有問題,安裝不上,需要指定安裝1.12.1版LDFLAGS=" -lm -lcompiler_rt" pip install numpy1.12.1【安裝時間會有點長,主要是編譯過程,幾個模塊可以一個一個來裝,numpy是基1.12.1礎庫,裝matplotlib和pandas前必須先裝】【2018-10-15更新】關于lxml、scrapy 安裝失敗的情況解決方案錯誤error: command ‘aarch64-linux-android-clang’ failed with exit status 1近日重裝termux,安裝lxml scrapy mitmproxy老是失敗,還以為是clang更新的緣故。搜索網絡解決方案,是因為安裝openssl時直接apt安裝的結果。這里要直接用deb包安裝 openssl.deb、openssl-dev.deb、openssl-tool.deb這里是官方解決方案https://github.com/termux/termux-packages/issues/2847
aarch64版本對應的openssl包
arm版對應的openssl包
先輸入uname -m查看版本,我的是aarch64,也有可能是arm版的如果是aarch的下載對應aarch的openssl包解壓后安裝openssl包,與下圖類似。
解壓安裝過程
之后再pip install lxml scrapy mitmproxy 就行了安裝mitmproxy 4.0.1時需要cryptography>2.1.2。之前安裝lxml時安裝的cryptography是2.0.1版本老實安裝不上(就是這個原因才重新安裝termux的,教訓慘痛),這次修改openssl包時pip安裝到了2.3.1一次性也解決了。(5)安裝其他常用模塊如果想安裝jupyter,需要安裝一個第三方模塊 apt install libcrypt-dev再安裝 pip install jupyter note 大部分的直接pip安裝,比如:pip install nltkpip install demjsonpip install ipythonpip install demjson tushare colorama還有其他:apt install git 這個碼農都懂的apt install htop 任務管理器apt install tree 目錄樹apt install vim 雖然termux自帶vi,如果想使用vim(畢竟神之編輯器),則必須安裝,配合.vimrc,bundle 和 git 可以完美配置python開發環境,體驗幾乎和ubuntu的終端無異.小貼士:所有安裝命令必須在提示符 下 輸 入 , 如 果 是 提 示 符 > > > , 請 輸 入 q u i t ( ) 切 換 到 提 示 符 下輸入,如果是提示符 >>> ,請輸入 quit()切換到提示符 下輸入,如果是提示符>>>,請輸入quit()切換到提示符下好了,基本上可以運行python大部分程序了。。。。。。。關于安裝mysql【2019-2-30更新】怎么安裝mysql有沒有教程呢?搭建php服務器離不開mysql,但termux中沒有mysql源,只有MYSQL分支mariadb,兼容mysql,有人測試速度比mysql更快。直接apt install mariadb有人反應安裝后無法啟動,解決方法,再安裝mysqld install 就可以了最后,把以上整理成一個.sh文件,在命令行運行bash termux_python.sh一鍵安裝#Termux安裝python所需要的一些庫apt updateapt upgradeapt install python python-dev python2 python2-devapt-get install clangapt-get install libxml2 libxml2-dev libxslt libxslt-devapt install openssl libffi libffi-devapt install openssl openssl-tool openssl-devapt install clang g++ libxml2-dev libxslt-dev python python-devapt install clang python python-devapt install fftw libzmq libzmq-devapt install freetype freetype-dev libpng libpng-dev pkg-configpip install BeautifulSoup4 requestspip install lxmlpip install scrapy#pip install numpy1.12.1#最新的1.13.1有問題,安裝不上LDFLAGS=" -lm -lcompiler_rt" pip install numpy1.12.1LDFLAGS=" -lm -lcompiler_rt" pip install matplotlib pandas jupyterpip install ipythonpip install demjson tushare colorama【2019-2-31更新】再附上一個termux中文安裝折騰記錄精華,別人寫的。https://github.com/myfreess/Mytermuxdoc 2018-07-05更新這里再推薦一款在手機上運行py文件的手機軟件:Pydroid 3 - Educational IDE for Python 3下面是關于他的介紹pydroid3手機版,這是一個非常不錯的手機python編程軟件,它擁有非常強大的編譯器,可以幫助您編輯python程序,pydroid3手機版不需要電腦也能夠時刻提高您的個人代碼編輯水平,有需要的小伙伴千萬不要錯過哦!pydroid3手機版功能特色:擴展鍵盤和所有你需要用Python編程的符號.語句高亮和主題.代碼預測,自動縮進和實時代碼分析,就像任何真正的IDE一樣.選項卡.增強的代碼導航與交互賦值/定義gotos.一鍵在Pastebin上分享【軟件介紹】Pydroid 3是一款使用比較方便而且功能非常的強大的教育性編程應用,可以快速的學習的開箱即用示例,功能齊全的終端仿真器以及內置C、C ++甚至Fortran編譯器,帶有斷電和手表的PDB調試器。特色:1、使用方便而且功能非常強大的手機編程應用,界面很簡潔;2、可以進行編輯、代碼預測以及擴展鍵盤欄和語法高亮主題等;3、自定義儲存庫,功能齊全的終端仿真器以及Cython支持。
個人感覺和termux相比,共性是:1、都是終端模擬器;2、都可以pip安裝擴展庫。不同之處:1、termux純粹就是終端模擬器,pydroid3增加了python的IDE界面。可以編寫一段程序后再運行,方便了許多。2、pydroid3的符號面板比較豐富,避免了手機輸入法中找符號的繁瑣。3、Termux適合喜歡折騰linux的人,而Pydroid3適合在手機上玩python的人,畢竟Pydroid3上模塊直接pip安裝使用,封裝程度較高,不折騰。而Termux還需要各種支持環境,編譯器什么滴,都要自己動手配置。各位自己取舍吧。
作者:hrcl2015
鏈接:https://www.jianshu.com/p/4deba3fad266
來源:簡書
簡書著作權歸作者所有,任何形式的轉載都請聯系作者獲得授權并注明出處。
總結
以上是生活随笔為你收集整理的安卓手机运行python程序的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [折腾日记]win10 ,ubuntu双
- 下一篇: 软件测试实战(微软技术专家经验总结)--