51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 533|回复: 0
打印 上一主题 下一主题

[资料] 利用ChatGPT来自动化Python任务

[复制链接]
  • TA的每日心情
    擦汗
    昨天 09:02
  • 签到天数: 1042 天

    连续签到: 4 天

    [LV.10]测试总司令

    跳转到指定楼层
    1#
    发表于 2023-5-16 14:31:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    1.概述
      最近,比较火热的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无疑比现有的一些搜索引擎更有优势。

    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏1
    回复

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-8 18:30 , Processed in 0.061035 second(s), 24 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表