怎么撸出春节智能迎春对联小程序
这篇文章主要讲解了“怎么撸出春节智能迎春对联小程序”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么撸出春节智能迎春对联小程序”吧!
准备工作
掌握语言:微信小程序语言
技术要点:①微信小程序云开发 ②百度AI智能创作平台-智能写春联
游戏流程与规则
游戏流程:可以通过点击随机春联
和指定姓氏
来获取所想要的春联~
名词解释:①随机春联,随机显示一对春联。 ②指定姓氏:输入你的姓氏,生成对联。
部署步骤
1??注册微信小程序流程,开启云开发
2??注册百度AI平台——》控制台——》创建自然语言处理的应用——》百度认证授权,拿到token——》再拿token去智能春联API接口
3??需要修改的地方:APPID(用微信开发者工具打开时输入的APPID)、百度token(在couplet文件夹里的index.js文件)、云开发环境env(在app.js文件)
逻辑讲解与核心代码
1 随机春联的逻辑讲解
由于百度提供的智能春联API接口是需要传参的,所以我们可以提前预备一个小型数据集合,通过点击的时候能进行传值,然后返回需要的对联。因此,是收集了部分迎春过年的字词、词语。
varRANDOM_TEXT_LIST=["虎","虎年","迎春","春节","过年","年兽","过春节","初一","年初","红红火火","红火","开心","开开心心","健康","健健康康","长寿","平安","平平安安","家庭","家庭和睦","和睦","子子孙孙","勤劳","福气","福","致富","富裕","富","合家欢喜","合家","欢喜","喜庆","喜","囍","生意兴隆","恭喜发财","大富大贵","富贵","富裕","丰年","子孙满堂","心欢喜","人间喜","灯火","灯笼","烟花","爆竹"]
2 指定姓氏的逻辑讲解
这个和随机春联是类似的逻辑,只不过需要用户输入姓氏,但是用到的api接口有点拉胯,输入单单一个姓的字,输出的内容是有点不合理。所以在这处理办法是拼接加一个“家”字进去,比如输入姓氏:柳,传值的就是柳家;输入的是张,就是张家...
ok:function(){vartext=this.data.textVif(!text||text.length>4){wx.showToast({title:'姓氏暂不支持超过4个字哦!',icon:'none'})return;}this.getCoupletByTxt(text+"家")//智能写对联this.setData({showModal:false})},
3 核心代码
经过前面的逻辑讲解,你可能就知道,核心代码是公共调用的方法。(Bingo~ 你猜对了)
随机春联调用的方法
//随机春联的调用方法bindGetRandomCouplet(){letthat=thisvarnum=parseInt(Math.random()*(MAX_NUM-MIN_NUM+1)+MIN_NUM,10);//生成[n,m]的随机整数that.getCoupletByTxt(RANDOM_TEXT_LIST[num])//智能写对联},
指定姓氏调用的方法
//随机春联的调用方法ok:function(){vartext=this.data.textVif(!text||text.length>4){wx.showToast({title:'姓氏暂不支持超过4个字哦!',icon:'none'})return;}this.getCoupletByTxt(text+"家")//智能写对联this.setData({showModal:false})},
调用智能春联的公共方法
//智能写对联(API接口来源,参考百度-语言处理技术-智能创作平台-智能写对联:ai.baidu/ai-doc/NLP/Ok53wb6dh)getCoupletByTxt(text){letthat=thisconsole.log(text)//字符串(限5字符数以内)即作诗的主题if(!text||text.length>5){wx.showToast({title:'主题限制5个字以内哦!',icon:'none'})return;}wx.cloud.callFunction({name:'couplet',data:{action:'getCoupletByTxt',text}}).then(res=>{console.log(res)if(res.result.error_code){if("17".indexOf(res.result.error_code)!=-1){wx.showToast({title:'调用次数用完啦,点击右下角小电话,联系开发者充次钱充次数啦!',icon:'none',duration:3000,})}else{wx.showToast({title:'当前对联不太行,请重试!',icon:'none'})}return;}that.setData({couplets:res.result.couplets})})},
云函数调用的公共方法
//注:先看readme.md文件//对联生成请求constcloud=require('wx-server-sdk')varrp=require('request-promise')cloud.init({env:cloud.DYNAMIC_CURRENT_ENV})constDB=cloud.database()//天行数据的KEYvarTIAN_XING_KEY=''//天行数据的接口APIvarTIAN_XING_API='api.tianapi/duilian/index'//百度TokenvarBAI_DU_ACCESS_TOKEN=''//这里需要自行去申请咯~//百度接口apivarBAI_DU_API=["aip.baidubce/rpc/2.0/creation/v1/poem",//智能写诗"aip.baidubce/rpc/2.0/creation/v1/couplets"//智能写对联]//云函数入口函数exports.main=async(event,context)=>{var{action,text}=eventvardata={}switch(action){case'getPoemByTxt':{data.text=textif(text=="")return{message:'缺少参数text'}//智能写诗(API接口来源,参考百度-语言处理技术-智能创作平台-智能写诗:ai.baidu/ai-doc/NLP/ak53wc3o3)returnnewPromise((resolve,reject)=>{try{rp({method:'POST',headers:{"content-type":"application/json",},body:JSON.stringify(data),url:BAI_DU_API[0]+'?access_token='+BAI_DU_ACCESS_TOKEN,//text必要参数,写诗的主题内容},function(error,response,body){if(error){returnreject(error);}returnresolve(JSON.parse(body));})}catch(e){returnreject(e)}});}case'getCoupletByTxt':{data.text=textif(text=="")return{message:'缺少参数text'}//智能写对联(API接口来源,参考百度-语言处理技术-智能创作平台-智能写对联:ai.baidu/ai-doc/NLP/Ok53wb6dh)returnnewPromise((resolve,reject)=>{try{rp({method:'POST',headers:{"content-type":"application/json",},body:JSON.stringify(data),url:BAI_DU_API[1]+'?access_token='+BAI_DU_ACCESS_TOKEN,//text必要参数,对联的主题内容},function(error,response,body){if(error){returnreject(error);}returnresolve(JSON.parse(body));})}catch(e){returnreject(e)}});}case'getRandomCouplet':{//随机一对对联(无横批)(API接口来源,天行数据:tianapi/console/)returnnewPromise((resolve,reject)=>{rp({url:TIAN_XING_API+'?key='+TIAN_XING_KEY,method:"POST",json:true,},function(error,response,body){console.log("响应"+body)resolve(body)if(!error&&response.statusCode==200){try{}catch(e){reject()}}})})}default:{return{message:'action错误!'}}}}
感谢各位的阅读,以上就是“怎么撸出春节智能迎春对联小程序”的内容了,经过本文的学习后,相信大家对怎么撸出春节智能迎春对联小程序这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是主机评测网,小编将为大家推送更多相关知识点的文章,欢迎关注!
上一篇:thinkphp5.0.x命令是怎么执行filter的
下一篇:怎么用Python发现数据的规律