美文网首页我也码计算机@linux_python_R 技术帖freeCode@IT
当python遇到Andriod手机 那么,万物皆可盘

当python遇到Andriod手机 那么,万物皆可盘

作者: 清风Python | 来源:发表于2019-07-03 02:41 被阅读177次
    嚣张开场

    今天不跟大家讲python知识,是不很失望?No,看过了今天的内容,你python的装13指数,至少上升1w+,并附带暴击、溅射、眩晕、致盲效果。没错,就是这么嚣张.....

    当python遇到安卓手机

    我们日常的python学习和使用都是在电脑上的,我们会写Linux下的python脚本、搞一些爬虫的项目、写几个好玩的web网站,用python做数据分析。可如果脱离了电脑,就成了零。
    如何让我们的python,随时随地的装13? 使用Qpython.....

    Qpython介绍

    首先我需要说一下,公众号就几百个粉丝,我可没能力接广告,这个锅我可不背....
    Qpython是一款安卓免费的python模拟器,在安卓应用市场就可以下载到。
    当然你也可以访问它的官网进行下载:https://www.qpython.com/

    Qpython官网
    点击下载python2或者python3,会跳转这项目的Github:
    选择apk即可下载
    安装完成后,进入系统界面: 系统界面
    之所以说Qpython值得我们去学习,是因为它自带了pip可以像电脑一样下载我们所需要的模块,如下图:
    pip3下载模块
    手机端的python工具很多,比如之前我使用的Pydroid3等等。为什么要选择Qpython?
    因为Qpython针对安卓手机,专门开发了androidhelper模块。此模块可以做什么?很多很多....
    androidhelper模块介绍
    Hello World

    先来看一段最简单的HelloWorld代码...

    import androidhelper
    droid = androidhelper.Android()
    droid.makeToast('Hello, Android!')
    print('Hello world!')
    

    droid.makeToast('Hello, Android!') 可以在手机界面显示类似悬浮的文本内容...
    有更高级的么?当然.....

    语音播报
    import androidhelper
    
    droid = androidhelper.Android()
    message = droid.dialogGetInput('TTS', 'What would you like to say?').result
    droid.ttsSpeak(message)
    

    这段代码是干嘛的?首先,代码会弹框要求你输入一段文字,如下图:

    弹窗输入
    之后,代码会调用安卓自身语音系统droid.ttsSpeak(message)来语音朗读你输入的文字。
    也就是说,在没有任何API接口的情况下,我们可以使用python将手机转化为一个播放器.....
    有些人说,还不够帅,有没有更酷的?当然...
    # -*- coding: utf-8 -*-
    import androidhelper
    import time
    from math import radians
    droid = androidhelper.Android()
    droid.startSensingTimed(1, 250)
    droid.startLocating()
    while 1:
        gpsdata = droid.readLocation().result
        print(gpsdata)
        s6data = droid.sensorsReadOrientation().result
        if len(gpsdata)>0:
            print (gpsdata['gps']['bearing']) #取得Gps导向(bearing)(角度)
        if len(s6data)>0:
            print (s6data[0]) #取得罗盘方位角(azimuth)(弧度)
        time.sleep(0.5)
    droid.stopLocating()
    droid.stopSensing()
    

    python调用安卓的readLocation借口,获取到手机的地理位置经纬度,以及手机罗盘指针。
    这个有什么用?记得我和大家说的,自从开始搞公众号,每天晚上两三点,下班坐班车经常坐过站,苦逼的要死。
    而我现在用它来后台监控定位,在我班车快到指定经纬度范围的时候,朗读语音叫我起床。酷不酷?
    还有最酷的

    手机小说下载站!

    前天和大家分享了我写的小说下载器工具,然后打包成exe后分享给大家。但工具只能在电脑端使用,朋友是mac系统,我打包的exe就没办法使用了,而我几个笔记本都是windows的,没办法打包。那怎么办?没错,把代码拷贝到Qpython中执行!

    避坑指南

    Qpython的模块下载是,lxml这个模块遇到了Linux和Mac下同样的问题,安装失败....解决办法比较麻烦,但是我代码撸的快啊,所以讲之前使用的requests_html模块转为requests+beautifulsoup 配合html.parser进行解析,绕过lxml。最终手机端实现了小说下载,来看看效果吧:


    清风小说下载器手机版.gif

    源代码我就不放出来了,主要是害怕网站投诉我,大家也看到了就一百多行的内容,按照我之前文章的思路,一会儿就搞定了....
    当然,之前封装的exe,加我微信获取的朋友们,也请留着自用就好,请勿用于非正当手段,谢谢。
    Flask的项目和一些其他的代码我都已经移动到手机,就不一一展示了....
    这么看起来,你觉得是不学习python更有动力了?

    The End

    今天的内容就展示到这里,希望大家喜欢,也希望能激发更多人对python这门语言的热爱。
    如果大家觉得文章不错,欢迎朋转发给你的朋友,更期待大家关注我的公众号:清风Python。
    关注博主不迷路,带你在娱乐中,收获更多的python知识!

    相关文章

      网友评论

        本文标题:当python遇到Andriod手机 那么,万物皆可盘

        本文链接:https://www.haomeiwen.com/subject/gztfhctx.html