7个实用的Python自动化代码,别再重复造轮子了

article/2025/8/27 2:46:45

关于Python有一句名言:不要重复造轮子。

但是问题有三个:

1、你不知道已经有哪些轮子已经造好了,哪个适合你用。有名有姓的的著名轮子就400多个,更别说没名没姓自己在制造中的轮子。

2、确实没重复造轮子,但是在重复制造汽车。包括好多大神写的好几百行代码,为的是解决一个Excel本身就有的成熟功能。

以下是经过Python3.6.4调试通过的代码,与大家分享:

1、抓取知乎图片

2、听两个聊天机器人互相聊天

3、AI分析唐诗的作者是李白还是杜甫

4、彩票随机生成35选7

5、自动写检讨书

6、屏幕录相机

7、制作Gif动图

01 抓取知乎图片

只用30行代码

from selenium import webdriverimport timeimport urllib.request
driver = webdriver.Chromedriver.maximize_windowdriver.get("https://www.zhihu.com/question/29134042")i = 0while i < 10: driver.execute_script("window.scrollTo(0, document.body.scrollHeight);") time.sleep(2) try: driver.find_element_by_css_selector('button.QuestionMainAction').click print("page" + str(i)) time.sleep(1) except: breakresult_raw = driver.page_sourcecontent_list = re.findall("img src=\"(.+?)\" ", str(result_raw))n = 0while n < len(content_list): i = time.time local = (r"%s.jpg" % (i)) urllib.request.urlretrieve(content_list[n], local) print("编号:" + str(i)) n = n + 1

02 没事闲的时候

听两个聊天机器人互相聊天

from time import sleepimport requestss = input("请主人输入话题:")while True: resp = requests.post("http://www.tuling123.com/openapi/api",data={"key":"4fede3c4384846b9a7d0456a5e1e2943", "info": s, }) resp = resp.json sleep(1) print('小鱼:', resp['text']) s = resp['text'] resp = requests.get("http://api.qingyunke.com/api.php", {'key': 'free', 'appid':0, 'msg': s}) resp.encoding = 'utf8' resp = resp.json sleep(1) print('菲菲:', resp['content'])#网上还有一个据说智商比较高的小i机器人,用爬虫的功能来实现一下:
import urllib.requestimport re
while True: x = input("主人:") x = urllib.parse.quote(x) link = urllib.request.urlopen( "http://nlp.xiaoi.com/robot/webrobot?&callback=__webrobot_processMsg&data=%7B%22sessionId%22%3A%22ff725c236e5245a3ac825b2dd88a7501%22%2C%22robotId%22%3A%22webbot%22%2C%22userId%22%3A%227cd29df3450745fbbdcf1a462e6c58e6%22%2C%22body%22%3A%7B%22content%22%3A%22" + x + "%22%7D%2C%22type%22%3A%22txt%22%7D") html_doc = link.read.decode reply_list = re.findall(r'\"content\":\"(.+?)\\r\\n\"', html_doc) print("小i:" + reply_list[-1])

03 分析唐诗的作者是李白还是杜甫

import jiebafrom nltk.classify import NaiveBayesClassifier
# 需要提前把李白的诗收集一下,放在libai.txt文本中。text1 = open(r"libai.txt", "rb").readlist1 = jieba.cut(text1)result1 = " ".join(list1)# 需要提前把杜甫的诗收集一下,放在dufu.txt文本中。text2 = open(r"dufu.txt", "rb").readlist2 = jieba.cut(text2)result2 = " ".join(list2)
# 数据准备libai = result1dufu = result2
# 特征提取def word_feats(words): return dict([(word, True) for word in words])
libai_features = [(word_feats(lb), 'lb') for lb in libai]dufu_features = [(word_feats(df), 'df') for df in dufu]train_set = libai_features + dufu_features# 训练决策classifier = NaiveBayesClassifier.train(train_set)
# 分析测试sentence = input("请输入一句你喜欢的诗:")print("\n")seg_list = jieba.cut(sentence)result1 = " ".join(seg_list)words = result1.split(" ")
# 统计结果
lb = 0df = 0for word in words: classResult = classifier.classify(word_feats(word)) if classResult == 'lb': lb = lb + 1 if classResult == 'df': df = df + 1
# 呈现比例x = float(str(float(lb) / len(words)))y = float(str(float(df) / len(words)))print('李白的可能性:%.2f%%' % (x * 100))print('杜甫的可能性:%.2f%%' % (y * 100))

04 彩票随机生成35选7

import random
temp = [i + 1 for i in range(35)]random.shuffle(temp)i = 0list = while i < 7: list.append(temp[i]) i = i + 1list.sortprint('\033[0;31;;1m')print(*list[0:6], end="")print('\033[0;34;;1m', end=" ")print(list[-1])

05 自动写检讨书

import randomimport xlrd
ExcelFile = xlrd.open_workbook(r'test.xlsx')sheet = ExcelFile.sheet_by_name('Sheet1')i = x = input("请输入具体事件:")y = int(input("老师要求的字数:"))while len(str(i)) < y * 1.2: s = random.randint(1, 60) rows = sheet.row_values(s) i.append(*rows)print(" "*8+"检讨书"+"\n"+"老师:")print("我不应该" + str(x)+",", *i)print("再次请老师原谅!")'''以下是样稿:
请输入具体事件:抽烟老师要求的字数:200 检讨书老师:我不应该抽烟, 学校一开学就三令五申,一再强调校规校纪,提醒学生不要违反校规,可我却没有把学校和老师的话放在心上,没有重视老师说的话,没有重视学校颁布的重要事项,当成了耳旁风,这些都是不应该的。同时也真诚地希望老师能继续关心和支持我,并却对我的问题酌情处理。无论在学习还是在别的方面我都会用校规来严格要求自己,我会把握这次机会。但事实证明,仅仅是热情投入、刻苦努力、钻研学业是不够的,还要有清醒的政治头脑、大局意识和纪律观念,否则就会在学习上迷失方向,使国家和学校受损失。再次请老师原谅!'''

06 屏幕录相机

抓屏软件

from time import sleepfrom PIL import ImageGrab
m = int(input("请输入想抓屏几分钟:"))m = m * 60n = 1while n < m: sleep(0.02) im = ImageGrab.grab local = (r"%s.jpg" % (n)) im.save(local, 'jpeg') n = n + 1

07 制作Gif动图

from PIL import Image
im = Image.open("1.jpg")images = images.append(Image.open('2.jpg'))images.append(Image.open('3.jpg'))im.save('gif.gif', save_all=True, append_images=images, loop=1, duration=1, comment=b"aaabb")

关于Python技术储备

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

一、Python所有方向的学习路线

Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

二、学习软件

工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。

三、入门学习视频

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

四、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

五、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。


这份完整版的Python全套学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

Python资料、技术、课程、解答、咨询也可以直接点击下面名片,添加官方客服斯琪


http://chatgpt.dhexx.cn/article/YKfAeggu.shtml

相关文章

全网最详细的Python自动化测试

1. 概述 1.1 python自动化 什么是python自动化&#xff1f;我理解的Python自动化测试就是把以前人为测试转化为机器测试的一种过程。自动化测试是一种比手工测试更快获得故障反馈的方法。 自动化测试是一种质量保障的方式&#xff0c;最重要的还是以做好一款高质量产品为前提…

python自动化

一、python回顾 1、python的发展方向 web开发 爬虫数据分析 机器学习(深度学习) 自动化运维 自动化测试 2、python测试成长 初级测试工程师 中级测试工程师 测试开发工程师 3、自动化与Python python的强大的第三方库&#xff0c;为很多的自动化流程提供的快捷的实现…

bootdo jar 改war 坑

最新下载bootdo pom文件中这一行请保持注释&#xff0c;严格按照bootdo的文档走。 请勿自由发挥&#xff01;

BootDo平台数据库使用Oracle

最近协助使用开源框架&#xff0c;在网上到个BootDo 使用起来还是非常方便的&#xff0c;由于数据库原例子使用mysql&#xff0c;需求要后台使用成Oracle&#xff0c;有时看看例子还不错&#xff0c;真要修改成项目来使用&#xff0c;还有得研究&#xff0c;从连接数据库、acti…

BootDo:修改启动时的象形文字

一、内容介绍 BootDo是在SpringBoot基础上搭建的一个Java基础开发平台&#xff0c;很有学习价值&#xff0c;本文将介绍BootDo如何修改启动时的象形文字。 二、前置工作 1.本文bootdo下载的地址为https://gitee.com/lcg0124/bootdo&#xff0c;压缩包名为lcg0124-bootdo-mas…

基于 Springboot 和 Mybatis 的后台管理系统 BootDo

介绍&#xff1a; 项目介绍 面向学习型的开源框架&#xff0c;简洁高效&#xff0c;减少过渡封装&#xff0c;展现技术本质 Springboot作为基础框架&#xff0c;使用mybatis作为持久层框架 使用官方推荐的thymeleaf做为模板引擎&#xff0c;shiro作为安全框架,主流技术&…

Bootdo后台管理系统使用步骤详解

Bootdo后台管理系统使用步骤 Home1.导入项目2.创建数据库3.启动项目4.数据库新表代码生成5.jar包导出6.添加菜单 Home 面向学习型的开源框架&#xff0c;简洁高效&#xff0c;减少过渡封装&#xff0c;展现技术本质! 项目地址(GitHub):https://github.com/lcg0124/bootdo 项…

bootdo框架使用步骤总结

仅作为个人学习纪录&#xff0c;其他人只作为参考&#xff0c;图较少&#xff0c;会不断更新。创建时间 2018-04-19 项目地址 bootdo官网 因为从git上下载的文件结构并不是习惯&#xff0c;所以将里面一层的复制到最完成根目录idea导入&#xff0c;选择到项目以后&#xff0c…

登陆页面总结(bootdo)

总结自开源项目bootdo 图标设置 验证码 验证码生成工具类 import org.slf4j.Logger; import org.slf4j.LoggerFactory;import javax.imageio.ImageIO; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.…

bootdo mysql_iBootDo: 基于BootDo项目定制版,兼容MySQL、Oracle

iBootDo 项目介绍 基于BootDo项目定制版&#xff0c;根据个人项目经验改造&#xff1a;兼容MySQL、Oracle&#xff0c;Thymeleaf升级到3.0&#xff0c;默认Session存入Redis等&#xff1b; 感谢BootDo作者 lcg0124 的分享。 BootDo地址&#xff1a; https://gitee.com/lcg0124/…

bootdo框架首页解析

跳转首页 左侧大的方向上分三大块 左侧第一大块中 包含有 重复的功能 可以去掉 右侧部分控制左侧展开和收起的功能 <div class"row content-tabs"><button class"roll-nav roll-left J_tabLeft"><i class"fa fa-backward">&l…

后台管理页面(bootdo)

项目源码&#xff1a;bootdo: 面向学习型的开源框架&#xff0c;简洁高效&#xff0c;减少过渡封装&#xff0c;展现技术本质 左边的菜单栏分析 数据库结构 样式实例 用树结构封装菜单数据&#xff0c;方便获取前后节点&#xff0c;通过自身id和父id相匹配&#xff0c;构建菜…

BootDo项目

因为本地项目需要使用bootdo和springCloud结合&#xff0c;所以&#xff0c;我今天开始学习一下bootdo的知识 但是从官网下载下一个bootdo项目导入idea之后发现并不能运行起来&#xff0c;报cant found git.exe 然后需要在官网下载对应版本的git。并且在setting–git中配置一下…

BootDo:源代码打包与自启动

一、内容介绍 BootDo是在SpringBoot基础上搭建的一个Java基础开发平台&#xff0c;很有学习价值&#xff0c;本文将介绍BootDo的源代码打包与自启动。 二、前置工作 1.本文bootdo下载的地址为https://gitee.com/lcg0124/bootdo&#xff0c;压缩包名为lcg0124-bootdo-master.…

BootDO框架的使用及介绍

BootDo是一个用于微服务的高效、低包、面向学习的开源Java EE开发框架。 BootDo是一个基于SpringBoot的Java基本开发平台。MyBatis是数据访问层&#xff0c;ApacheShiro是权限授权层&#xff0c;Ehcache缓存常用数据。 BootDo主要定位在后台管理系统中学习通信。内置后端管理…

API网关设计与实现(一)

API网关使用场景API网关技术选型与应用架构 API网关使用场景 在使用微服务架构场景下&#xff0c;客户端在调用后台微服务时&#xff0c;都需要进行登陆认证、权限认证、流量控制、负载均衡、健康检查等操作&#xff0c;这些操作是调用每一个微服务都必须。因此需要将该操作交给…

API 网关实现功能

负载均衡 当网关后面挂接同一应用的多个副本时&#xff0c;每次用户的请求都会通过网关的负载均衡算法&#xff0c;路由到对应的服务上面。例如&#xff1a;随机算法&#xff0c;权重算法&#xff0c;Hash 算法等等。 如果上游服务采取微服务的架构&#xff0c;也可以和注册中…

API 网关

前言 假设你正在开发一个电商网站&#xff0c;那么这里会涉及到很多后端的微服务&#xff0c;比如会员、商品、推荐服务等等。 那么这里就会遇到一个问题&#xff0c;APP/Browser 怎么去访问这些后端的服务&#xff1f;如果业务比较简单的话&#xff0c;可以给每个业务都分配一…

API网关在API安全性中的作用

从单一应用程序切换到微服务时&#xff0c;客户端的行为不能与客户端具有该应用程序的一个入口点的行为相同。简单来说就是微服务上的某一部分功能与单独实现该应用程序时存在不同。 目前在使用微服务时&#xff0c;客户端必须处理微服务体系结构带来的所有复杂性&#xff0c;…