使用ChatGPT来自动化Python任务
哥不是小萝莉 人气:01.概述
最近,比较火热的ChatGPT很受欢迎。今天,笔者为大家来介绍一下ChatGPT能做哪些事情。
2.内容
ChatGPT是一款由OpenAI开发的专门从事对话的AI聊天机器人。它的目标是让AI系统更加自然的与之交互,但它也可以在我们编写代码的时候提供一些帮助。
2.1 使用ChatGPT来绘制线性回归
如果你想绘制线性回归,你可以简单的告诉ChatGPT:使用 matplotlib 用 Python 绘制线性回归
接下来,ChatGPT对话框内就会给你听绘制线性回归的步骤和实现代码,如下如所示:
我们使用这段代码,来执行看看最终的结果,代码如下:
import matplotlib.pyplot as plt import numpy as np # 准备数据 x = np.array([1, 2, 3, 4, 5]) y = np.array([1, 2, 1.5, 3, 2.5]) # 绘制散点图 plt.scatter(x, y) # 计算线性回归模型 slope, intercept = np.polyfit(x, y, 1) # 绘制线性回归直线 plt.plot(x, slope * x + intercept, color='r') # 添加 x 轴、y 轴和图标题 plt.xlabel('X') plt.ylabel('Y') plt.title('Linear Regression') # 显示图像 plt.show()
执行结果如下所示:
这里需要注意是,如果执行代码出现如下错误:
Non-ASCII character '\xe5'
可以在代码开头里面添加如下代码:
# -*- coding: UTF-8 -*-
这个任务是比较简单的,接下来我们来提升一下难度。
2.2 使用Python给微信发信息
然后,我们在ChatGPT对话框中输入:使用Python给微信发信息
ChatGPT给出解决方案如下图所示:
2.3 使用Python发送电子邮件
我们使用搜索引擎寻找相关发送邮件的代码片段,搜索出来的结果可能会有很多代码片段展示如何使用Python发送电子邮件。我们可以使用ChatGPT来更具体一些,比如我们输入:从“email_1”发送一封电子邮件到“email_2”,主题为“ChatGPT 发送的电子邮件”,内容为“ChatGPT Test Email!” 使用 Python
然后,ChatGPT给出的解决方案如下图所示:
实现代码如下所示:
import smtplib # 创建 SMTP 客户端对象 smtp_client = smtplib.SMTP('smtp.example.com') # 连接到邮件服务器 smtp_client.login('email_1', 'password') # 发送电子邮件 smtp_client.sendmail( 'email_1', 'email_2', 'Subject: ChatGPT Send Email\n\nChatGPT Test Email!' ) # 关闭客户端 smtp_client.quit()
2.4 使用Python开发一个爬虫程序
使用ChatGPT最有难度的应该就是抓取网站信息,因为网站具有不同的HTML,因此抓取网站的步骤因站点而异。这里我们抓取Scrape上的商品名称和价格,在ChatGPT输入关键字:Python抓取https://books.toscrape.com/商品名称和价格
ChatGPT给出的解决方案如下所示:
实现代码如下所示:
import requests from bs4 import BeautifulSoup # 发送 HTTP 请求并获取网页内容 response = requests.get('https://books.toscrape.com/') html = response.text # 使用 BeautifulSoup 解析 HTML soup = BeautifulSoup(html, 'html.parser') # 提取商品名称和价格信息 items = soup.find_all('h3') prices = soup.find_all('p', class_='price_color') # 遍历商品信息,打印商品名称和价格 for item, price in zip(items, prices): print(item.text, price.text)
执行上述Python代码,抓取结果如下所示:
无需编写代码,即可通过ChatGPT生成来获取数据。
3.总结
ChatGPT是基于GPT-3模型的衍生品,因为这一点ChatGPT也被称为GPT-3.5。ChatGPT背后的训练除了常规的万亿级语料支持之前,还依赖了更为强大的算力。这也使得ChatGPT可以在不断积累数据的同时,通过不断的强化训练,让自己变得更加智能。另外,ChatGPT和其他搜索引擎就相同的问题进行检索,通过对比发现ChatGPT往往可以给出用户最想要的答案,并且呈现的方式也非常的直接,如ChatGPT可以根据用户编程的需求直接生成代码,同时也可以帮助用户检索已有代码存在的错误。而面对同样的问题其他搜索引擎却只能给用户提供一堆网页链接,需要用户花费更多的时间来筛选出自己想要的答案。从时间成本和效率上ChatGPT无疑比现有的一些搜索引擎更有优势。
加载全部内容