当前位置: 欣欣网 > 办公

5行Python代码让你的电脑 「永不息屏」?

2024-06-11办公

Python是一门 优雅 易入门 的编程语言。 往往用很少量的代码,就能帮助你完成一件很漂亮的事儿。

最开始学习Python,不需要太过复杂。只要玩儿的开心就行,慢慢培养兴趣,等你上手后,你会学习的更有信心。

今天我们就来玩玩儿, 5行代码能做啥? 这里我为大家介绍两个好玩儿的小项目,介绍如下:

  • 项目一: 5行代码让电脑永不息屏!

  • 项目二: 5行代码爬取表格数据!

  • 项目一:5行代码让电脑 永不锁屏

    众所周知 ,当你的电脑鼠标一直在动的时候,系统会默认你的电脑是在工作当中,因此就不会息屏。

    既然是玩吗?你就不要杠,说为啥 「不设置用不息屏」 ?那样,你赢了,我无话可说。哈哈!

    这里就是用代码自动化控制鼠标,实现鼠标的 「上下左右」 移动操作,让电脑误以为是认为在操作鼠标。

    在这里,我们使用的是Python中的 pyautogui库 。如果你的电脑没有安装这个库,可以使用下面代码安装一下。

    pip install pyautogui

    控制鼠标移动,使用的是pyautogui库中的moveRel(x,y)函数,用法如下:

  • 含义: 根据当前位置, 相对移动鼠标指针;

  • 注意: 当x/y大于0,则表示往右/往下移动鼠标指针。当x/y小于0,则往左/往上移动鼠标指针【x/y是整数】;

  • 当然这个随机数,肯定不要你人为去设置,我们也随机生成。在这里我需要为大家在介绍random库中的一个函数random.randint(a,b),用法如下:

  • 含义: 用于生成指定数值范围内的随机整数;

  • 注意: 该函数有两个参数a和b,表示指定区间的上限和下限;

  • import random
    random.randint(a=100,b=300)

    结果如下:

    有了这些基础后,我们直接上代码吧!

    # 导入相关库
    import pyautogui
    import random
    import time
    # 使用while True循环,让程序一直执行!
    whileTrue:
    x = random.randint(-200,200)
    y = random.randint(-200,200)
    pyautogui.moveRel(x,y)
    time.sleep(5# 让鼠标移动到某个位置,停留几秒钟,我怕它太累

    当然, pyautogui库 作为一个自动化操作鼠标的库,有很多值得你去挖掘的知识点。这里只是简单使用,其它知识可以根据你的实际需求,去系统学习一下。

    项目二:5行代码爬取表格数据

    如果说想学习Python爬虫的话,我想这应该是最简单爬虫代码了。

    说白了,就是pandas库爬取表格数据。这个其实和Excel有点像,Excel不就是只能爬取一些规则的表格数据吗?但是这个更好用哦,毕竟不让你动手。

    今天我们爬取到网页是 「中商情报网」

    网址如下: https://s.askci.com/stock/a/0-0?reportTime

    如果想要使用pandas爬取数据,它的HTML结构是下面这个Table格式的。

    <table  class="..." id="...">
    <thead>
    <tr>
    <th>...</th>
    </tr>
    </thead>
    <tbody>
    <tr>
    <td>...</td>
    </tr>
    <tr>...</tr>
    <tr>...</tr>
    ...
    <tr>...</tr>
    <tr>...</tr>
    </tbody>
    </table>

    我们点击F12,查看源代码,当我们定位待爬取数据时,会发现该数据满足这个特点。

    其余知识没必要多讲,毕竟都是pandas中的知识,大家很熟悉了。 上代码:

    # 导入相关库
    import pandas as pd
    import csv
    # 我们只爬取十页数据
    for i in range(1,10): # 爬取全部页
    tb = pd.read_html(f'http://s.askci.com/stock/a/?reportTime=2021-03-31&pageNum={i}')[3
    tb.to_csv(r'上市公司.csv', mode='a', encoding='utf_8_sig', header=1, index=0)

    结果如下:

    妥妥的,这么多家上市公司的数据,就被你收入囊中了。 然后可以拿去做个简单的分析,或者练习pandas数据处理,不香吗?

    这里还有一点值得说明的是,上面代码中有一个 [3] ,代表啥意思呢?

    这是因为网页上可能存在多个表格,这时候就需要靠列表的切片 tables[x] ,来指定获取哪个表格。

    好了,今天的案例就介绍到这里,你学会了吗?

    Crossin的新书【 码上行动:用ChatGPT学会Python编程 】已经上市了。 本书以ChatGPT为辅助,系统全面地讲解了如何掌握Python编程,适合Python零基础入门的读者学习。

    购买后可加入读者交流群,Crossin为你开启陪读模式,解答你在阅读本书时的一切疑问。

    Crossin的其他书籍:

    添加微信 crossin123 ,加入编程教室共同学习 ~

    感谢 转发 点赞 的各位~