网站首页 > 技术文章 正文
之前在学习Python的时候,有去抓取过金山词霸每日一句的页面,这也只是简单的练习而且,如果真需要每日一句,其实可以直接调用金山词霸开放平台提供的API接口
从图中我们可以看到,要想获取当前的每日一句非常简单,只需要在浏览器直接访问就可以得到,我们先来尝试一下吧
好了,接口就长这个样子。我今天主要是想把我的微信小程序里面加一个金山词霸,每日一句的功能页面,先做个简单的展示吧。这里先新建一页面,在页面中加入
<image src="{{img_url}}" mode="widthFix"></image>
<view class="padding">
<button class="cu-btn block bg-blue margin-tb-sm lg" type="" bindtap="copyEnglish">复制英文</button>
<button class="cu-btn block bg-blue margin-tb-sm lg" type="" bindtap="copyChinese">复制中文</button>
</view>
主要就是显示每日一句的分享图片以及复制英文内容和中文内容,现在就开始编写js代码,首先需要一个获取当前日期的函数
getToday: function () {
var now = new Date();
var year = now.getFullYear();
var month = now.getMonth() + 1;
var day = now.getDate();
if (month < 10) {
month = '0' + month;
}
if (day < 10) {
day = '0' + day;
}
var nowDate = year + '-' + month + '-' + day;
return nowDate;
}
然后就可以直接使用wx.request来请求词霸每日一句的API了,这里我直接把请求放在onload方法中
onLoad: function (options) {
let url = `https://open.iciba.com/dsapi/?date=${this.getToday()}`;
let that=this;
wx.request({
url: url,
success: function (data) {
console.log(data);
},
fail: function (e) {
}
})
}
这样一来,我们进入到这个 页面就出触发onload方法
这里需要主要的是,把https://open.iciba.com加入到后端request合法域名
现在,我们需要在data中加入3个属性用于存放每日一句的图片、英文、汉译的内容
data: {
img_url:'',
english:'',
chinese:''
}
然后在wx.request请求成功后对三个属性赋值
onLoad: function (options) {
let url = `https://open.iciba.com/dsapi/?date=${this.getToday()}`;
let that=this;
wx.request({
url: url,
success: function (data) {
that.setData({img_url:data.data.fenxiang_img,english:data.data.content,chinese:data.data.note});
},
fail: function (e) {
}
})
}
好了,现在就可以看到这样的效果了
小程序的话,我们肯定会分享给好朋友吧,所以,我们还需要对分享事件特殊处理一下
/**
* 用户点击右上角分享
*/
onShareAppMessage: function () {
return {
title: "金山词霸,每日一句",
path: '/pages/ciba/index',
imageUrl: this.data.img_url,
}
}
这样一来,点击分享的时候,就会展示我们自定义的内容了
至此一个简单的页面就搞好了,是不是过于简单了一点,现在来看看真机上的效果吧
我只是记录我的学习过程,由于书读得少,可能很多地方表述或者是理解得不对,请轻喷并指正。
猜你喜欢
- 2025-05-10 19年前司机被沉尸水库!凶手落网,竟已是身家千万的大老板
- 2025-05-10 常见跨域解决方案(一)(解决跨域的几种方法)
- 2025-05-10 生态文明建设四年巡礼 〉浦城:“三大创新”集成叠加 绿色发展再开新局
- 2025-05-10 福建推进河(湖)长制工作:当好“施工队长”建设八闽幸福河湖
- 2025-05-10 满意在三明 | 三明站附近变美啦,你发现了吗
- 2025-05-10 前端使用FileReader 读取本地文件和校验文件唯一
- 2025-05-10 这是一道“送命题”...辅导孩子写作业,45岁男子被气出脑出血
- 2025-05-10 深入理解Android NDK日志符号化(android日志在什么位置)
- 2025-05-10 JavaScript精通到深入(javascript编程精解)
- 2025-05-10 精选前端核心面试题及解答 - 基础篇
- 05-11官方资源!多所知名高校课程,这个平台免费开放→
- 05-11说好的免费课程学剪辑 怎么会“花”掉10万?
- 05-11免费公开!中小学国家课程教材电子版来了
- 05-11338所知名高校50万门课,全免费!赶紧收藏
- 05-11免费课程来了,快来解锁你的艺术“超能力”吧~
- 05-10热学和湿度超稳定的一维钙钛矿(钙钛矿eqe)
- 05-10C#上位机基于SMTP实现邮件报警通知
- 05-10Android平台上最好的几款免费的代码编辑器
- 最近发表
- 标签列表
-
- cmd/c (64)
- c++中::是什么意思 (83)
- 标签用于 (65)
- 主键只能有一个吗 (66)
- c#console.writeline不显示 (75)
- js判断是否空对象 (63)
- pythoncase语句 (81)
- es6includes (73)
- sqlset (64)
- windowsscripthost (67)
- apt-getinstall-y (86)
- node_modules怎么生成 (76)
- localstorage.removeitem (74)
- vector线程安全吗 (70)
- & (66)
- java (73)
- org.redisson (64)
- js数组插入 (83)
- gormwherein (64)
- linux删除一个文件夹 (65)
- mac安装java (72)
- outofmemoryerror是什么意思 (64)
- eacces (67)
- 查看mysql是否启动 (70)
- 无效的列索引 (74)