如何实现Chatgpt写文章(附chatgpt3.5免费接口)

news2025/2/27 1:11:41

申明:本次只是说一下实现思路,官方的接口以及如何实现方式,本文没有提及,这次只是一个思路,若想代替人工完成质量还差的很远,请审核大大放行

在这里插入图片描述

今天再次优化了代码,修复了一些bug,考虑到不完善且文章质量不是很高的情况(连个图文都没有),打算将代码分离开来,一起使用可能会对后面维护开发产生不必要的麻烦,欢迎大佬的关注,我会自动回关!等到真正实现自动化,会打包成exe分享

实现效果看我的博客:Python3 循环语句

在这里插入图片描述

缺点:

  1. gpt3.5没有图文并茂
  2. "复制代码"转换过程中处理成了文字
  3. 未知原因requests返回的数据和真实的数据有出入

已完成的工作

20230405

  • 支持点赞、收藏回访(被动模式)
  • 关注回访(需要发表过博客)
  • 评论回访

20230406优化

  • 私信检测到群发消息自动三连/满足模板设定给予三连触发
  • 优化检测模式,防止出现多触发情况
  • 为了防止操作额度不够,只处理最新发表的博客(第一条),不在继续往下操作
  • 暂未对动态blink进行调整,理论可以
  • 评论多评检测(防止有人故意而为之)

20230408

  • 接入chatgpt,可对话、可自动评论

实现流程

第三方chatgpt3.5api接口

在这里插入图片描述
这里接口有需要的伙伴,私聊领取哈,免费的

构造标题、关键字等

在这里插入图片描述
构造完成整理为发送gpt的模块中

 title="Python3 循环语句"
    yaoqiu="要求:代码实例和执行结果解释多一点"
    text_val = "请写一篇标题为:"+title+"的博客文章,以markdown给我,字数在1800字左右"+yaoqiu

    content=chatgpt(title)

分析C的markdown接口请求参数

文章保存参数:

参数名说明
titlePython3 循环语句标题
description摘要摘要可为空
content内容需要使用markdown转换,不转换就是一行
tags文章标签例如:机器学习
categories暂不清楚,猜测分类
typeoriginal暂不清楚
status2暂不清楚
read_typepublic是否公开
reason暂不清楚
cover_imagesimgurl头图支持多个
is_new1新文
等等…

知道请求参数,关键在于标题、内容、标签、图片,于是接下来着手获取

内容

输入标题,完成构造对话发送等待返回文章,通过markdown处理请求

def convert_markdown_to_html(markdown_text):
    html = markdown.markdown(markdown_text)
    return html

处理后获得title标题、content内容

获取标签、头图

C站标签和头图属于一个接口,通过请求

  result=get_recommend_tags(title,content_mark)

获取到标签和头图,这里由于比较忙我就不整理参数了

以下为接口返回数据(请求标题与numpy相关):

{
	"code": 200,
	"message": "success",
	"traceId": "xxxxxx",
	"data": {
		"common": ["bug", "php", "开发语言", "thinkphp5", "微信小程序"],
		"list": {
			"推荐": ["numpy", "python", "机器学习", "开发语言", "人工智能"],
			"Python": ["python", "django", "pygame", "virtualenv", "tornado", "flask", "scikit-learn", "plotly", "dash", "fastapi", "pyqt", "scrapy", "beautifulsoup", "numpy", "scipy", "pandas", "matplotlib", "httpx", "web3.py", "pytest", "pillow", "gunicorn", "pip", "conda", "ipython"],"images": ["https://xxxxxx/img_convert/7bc0b398d41f4dbc81d31b9dedc4e172.png", "https://xxxxxx/img_convert/77fcfea2a41749d7867f62f0e98b01ca.png", "https://xxxxxx/img_convert/fad536e972e14ce4b37803185dc3b00c.png", "https://xxxxxx/img_convert/5bbc102f2243430991aedee1be20b4f3.png", "https://xxxxxx/img_convert/cf52fbe57e404f30babcdda6f1ef2c08.png"]
	}
}

标签是[‘推荐’]字段,使用python转换

tags = result['data']['list']['推荐']
tag_str = ', '.join(str(tag) for tag in tags)
print(tag_str)

打印结果为:numpy, python, 机器学习, 开发语言, 人工智能

以上已经获取到了标签和头图以及markdown格式的内容,接下来结合起来像C站文章保存接口请求一次

saveArticle(tag_str,imgurl,title,content_mark)

部分请求成功构造:

 json_data = {
    # 'article_id': 130040595,
    'title': title,
    'description': '',
    'content': content,
    'tags': tag_str,
    'categories': '',
    'type': 'original',
    'status': 2,
    'read_type': 'public',
    'reason': '',
    'resource_url': '',
    'original_link': '',
    'authorized_status': False,
    'check_original': False,
    'source': 'pc_postedit',
    'not_auto_saved': 1,
    'creator_activity_id': '',
    'cover_images': [
        imgurl,
    ],
    'cover_type': 1,
    'vote_id': 0,
    'scheduled_time': 0,
    'is_new': 1,
}

    response = requests.post(
    'xxxxx',
    cookies=cookies,
    headers=headers,
    json=json_data,
)
    print(response.text)

请求成功,刷新我的文章查看

在这里插入图片描述
由于这里还在对文章内容排版优化,所以就不直接发表,需要核查一遍,等后面对接了文心一言考虑自动发表!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/412931.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

单片机程序是如何运行起来

多年前在学习计算机原理的时候曾经问过老师一个问题,就是我们编写的程序是怎么在计算机中运行起来的,希望有个完整的思路,现在通过网络收集和整理了这个问题,相当于对这个问题又做了一个认识,有了新的体会。以stm32单片…

Go 语言切片是如何扩容的?

原文链接: Go 语言切片是如何扩容的? 在 Go 语言中,有一个很常用的数据结构,那就是切片(Slice)。 切片是一个拥有相同类型元素的可变长度的序列,它是基于数组类型做的一层封装。它非常灵活&am…

VCS4 debug with DVE

1、重点讲解: 在verilog源代码中嵌入VCD 系统函数,重点如testbench文件中。VCD文件是VCS产生的仿真波形文件,未经压缩,占用空间较大。VCD是压缩后的波形文件。 编译、仿真以生成VCD文件。 在后处理模式中使用激活DVElog对产生的…

【Javaee】SpringMVC_day01

文章目录1,SpringMVC简介1.1 SpringMVC概述2,SpringMVC入门案例2.1 需求分析2.2 案例制作步骤1:创建Maven项目,并导入对应的jar包步骤2:创建控制器类步骤3:创建配置类步骤4:创建Tomcat的Servlet容器配置类步骤5:配置Tomcat环境步骤6:启动运行…

JS字符串对象

、 JS字符串对象 1.1 内置对象简介 在 JavaScript 中,对象是非常重要的知识点。对象可以分为两种:一种是“自定义对象”外一种是“内置对象”。自定义对象,指的是需要我们自己定义的对象,和“自定义函数”是一些道理;内置对象,…

力扣刷题笔记26——最小的k个数/快速排序学习/快排与冒泡的时间复杂度

最小的k个数/快速排序学习/快排与冒泡的时间复杂度问题我的代码示例代码快速排序代码问题 来自力扣: 输入整数数组 arr ,找出其中最小的 k 个数。例如,输入4、5、1、6、2、7、3、8这8个数字,则最小的4个数字是1、2、3、4。示例 …

1672_MIT 6.828 xv6中如何通过构建环境让系统中增加一个可执行调用文件

全部学习汇总: GreyZhang/g_unix: some basic learning about unix operating system. (github.com) 前面已经分析了如何实现一个系统调用,这个过程的梳理也已经整理成了一份学习笔记。这一次看一下,如何让OS的系统中增加这样的一个可执行的文…

10.网络爬虫—MongoDB详讲与实战

网络爬虫—MongoDB详讲与实战MongoDBMongoDB安装创建数据目录1.数据库操作2.集合操作3.文档操作4.索引操作5.聚合操作6.备份与恢复MongoDB增删改查mongodb集合的增删改查数据插入到表数据的查看删除数据更新数据PyMongo连接数据库第二步 选择需要使用的数据库和集合PyMongo增删…

公司分布式锁加锁错误原因

目录一、问题二、问题复现三、为什么产生这个错误四、解决方案一、问题 第一次设置锁成功, 但是返回false, 后续在循环获取的时候, 因为已经设置成功, 调用setIfAbsent不会返回true, 导致等锁3s失败 private boolean lockWait(String key, long wait, long expire) { long tot…

【CV】Latent diffusion model 扩散模型体验

note 文章目录note一、diffusion模型1.1 Stable Diffusion简介1.2 和GAN对比的优势二、Latent diffusion model原理2.1 潜在空间(Lantent Space)2.2 自动编码器和U-Net2.3 文本编码器三、代码实践3.1 模型权重checkpoints3.2 Stable Diffusion v1模型推理3.3 安装Stable Diffus…

再见了,我的C!

本人的第一篇博客发布于1月份,现在已经4月份了,历时3个月,,已经将C语言涵盖的大多数C语言知识点系统性的整理了出来,在这个期间自己收获了很多,这是C语言的最后一篇文章,接下来我们来回顾一下我…

13.Java面向对象----嵌套类

Java面向对象—嵌套类、内部类、匿名类 一、static静态 在《Java编程思想》有这样一段话:   “static方法就是没有this的方法。在static方法内部不能调用非静态方法,反过来是可以的。而且可以在没有创建任何对象的前提下,仅仅通过类本身来…

计及需求侧响应日前、日内两阶段鲁棒备用优化【IEEE6节点】(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

3.3 二维随机变量条件分布

学习目标: 要学习二维随机变量的条件分布,我可能会采取以下步骤: 复习边缘分布和联合分布:首先需要了解二维随机变量的边缘分布和联合分布的概念以及相应的公式。 复习条件概率:学习条件概率的定义和计算公式&#x…

Java使用elasticjob实现定时任务(v2.1.5)

elastic是一个定时任务库 https://shardingsphere.apache.org/elasticjob/index_zh.html 项目结构 ​依赖 <dependency><groupId>com.dangdang</groupId><artifactId>elastic-job-lite-core</artifactId><version>2.1.5</version>&…

【linux】——进程和计划任务管理

文章目录1.进程 VS 线程1.1 程序和进程的关系1.2 线程1.3 进程和线程的关系2.查看进程2.1 查看进程信息ps2.2 查看进程信息top2.3 查看进程信息pgrep2.4 查看进程树pstree3.控制进程3.1 进程的启动方式3.2 进程的前后台调度3.3 终止进程的运行kill3.4 终止进程的运行pkill4.计划…

【华为OD机试】1039 - 迷宫问题

文章目录一、题目&#x1f538;题目描述&#x1f538;输入输出&#x1f538;样例1&#x1f538;样例2二、代码参考作者&#xff1a;KJ.JK&#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &#x1f308; &am…

CASA(Carnegie-Ames-Stanford Approach)模型应用

植被作为陆地生态系统的重要组成部分对于生态环境功能的维持具有关键作用。植被净初级生产力&#xff08;Net Primary Productivity, NPP&#xff09;是指单位面积上绿色植被在单位时间内由光合作用生产的有机质总量扣除自养呼吸的剩余部分。植被NPP是表征陆地生态系统功能及可…

全网最详细,Jmeter性能测试-性能基础详解,控制器不同选择(四)

目录&#xff1a;导读前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09;前言 逻辑控制器 提前说…

机器学习实战:Python基于支持向量机SVM-RFE进行分类预测(三)

文章目录1 前言1.1 支持向量机的介绍1.2 支持向量机的应用2 demo数据集演示2.1 导入函数2.2 构建数据集拟合2.3 预测模型及可视化3 实例演示分类&#xff08;非SVM&#xff09;3.1 导入函数和数据3.2 简单线性分类3.3 最大间隔决定分类4 实例演示分类&#xff08;SVM&#xff0…