Python3 - 三天学会微信小程序(Python后端研习)

article/2025/10/23 22:04:02

在这里插入图片描述

文章目录

  • 一、day01微信小程序
    • 1. 问题
    • 2. 环境的搭建
      • 2.1 Python环境
      • 2.2 小程序环境
        • 2.2.1 申请一个微信公众平台
        • 2.2.2 保存自己的appid
        • 2.2.3 下载开发者工具
        • 2.2.4 创建项目
    • 3. 开发小程序
      • 3.1 全局配置
      • 3.2 组件
        • 3.2.1 text
        • 3.2.2 view
        • 3.2.3 image
      • 3.3 样式
        • 3.3.1
    • 4. flex布局
    • 5. 实战
  • 二、day02微信小程序
    • 内容回顾
    • 今日概要
    • 今日内容
      • 1. 跳转
        • 1.1 标签绑定点击事件
        • 1.2 页面跳转
        • 1.3 通过标签跳转
      • 2. 数据绑定
        • 2.1 基本显示
        • 2.2 数据更新
      • 3. 获取用户信息
        • 方式一
        • 方式二
      • 4. 获取用户的位置信息
      • 5. for指令
      • 6. 获取图片
    • 总结
    • 作业
  • 三、day03微信小程序
    • 今日概要
    • 今日详情
      • 1. 数据绑定
      • 2.用户登录
  • day04微信小程序
    • 今日概要
    • 今日详情
      • 1. 用户登录
        • 1.1 发送短信
        • 1.2 登录
  • day05功能卡法
    • 今日概要
    • 今日详细
      • 1. 页面传值
        • 1.1 父页面向子页面传值
        • 1.2 子页面向父页面传值
    • 作业:
      • 1.发布状态
        • 1.1组件:进度条
        • 1.2 修改data中的局部数据
        • 1.3 闭包
      • 2.列表查看
        • 2.1 瀑布流

今天是一年一度的1024程序员节,祝大家节日快乐。前面半年我一直在研究Python和Linux相关技术,最近有需要写微信小程序的需求,为此花点时间学了下,很容易就上手了,大家不防一试。

一、day01微信小程序

1. 问题

  • 什么是微信小程序

    - 移动互联网时代,手机
    - 手机软件,在手机中安装很多软件
    - 腾讯和阿里(只安装自己不用别人)- 腾讯:微信 + N小程序- 阿里:支付宝 + N小程序
    
  • 为什么要做小程序?

    微信用户基数大
    在微信上用我们小程序比较便捷
    
  • 如何开发小程序?

    • 小程序:学习微信开发的语言(前段html、css、js、vue.js)
      • 微信开发者工具
    • API: restful接口(Python + flask + flask_restful)
      • Pycharm

2. 环境的搭建

2.1 Python环境

  • 虚拟环境
    • flask
    • flask_restful
  • Pycharm

2.2 小程序环境

2.2.1 申请一个微信公众平台

2.2.2 保存自己的appid

appid:wxff2dd22b6fb5a253

2.2.3 下载开发者工具

2.2.4 创建项目

3. 开发小程序

3.1 全局配置

{"pages": ["pages/index/index","pages/logs/index"],"window": {"navigationBarBackgroundColor": "#ffffff","navigationBarTextStyle": "black","navigationBarTitleText": "PDF转换器","backgroundColor": "#eeeeee","backgroundTextStyle": "light","enablePullDownRefresh": false},"tabBar": {"selectedColor": "#CD5C5C","list": [{"pagePath": "pages/index/index","text": "首页","iconPath": "static/tabbar/tabbar_news_30x30_@2x.png","selectedIconPath": "static/tabbar/tabbar_news_sel_30x30_@2x.png"}, {"pagePath": "pages/logs/index","text": "日志","iconPath": "static/tabbar/tabbar_news_30x30_@2x.png","selectedIconPath": "static/tabbar/tabbar_news_sel_30x30_@2x.png"}]},"networkTimeout": {"request": 10000,"downloadFile": 10000},"debug": true
}

3.2 组件

3.2.1 text

编写文本信息,类似于span

3.2.2 view

容器,类似于div标签

3.2.3 image

图片

3.3 样式

3.3.1

  • px
  • rpx,750rpx

4. flex布局

一种非常方便的布局方式。

在容器中记住4个样式即可。

display: flex;  		flex布局
flex-direction: column;		规定主轴水平方向:row/column
justify-content: space-around; 在主轴方向如何展示:flex-start/flex-end/center/space-around/space-between/space-evenly
align-items: flex-end; 在副轴方向如何展示: flex-start/center/space-around/space-between/space-evenly

5. 实战

二、day02微信小程序

内容回顾

  • 环境搭建
  • 全局配置
    • pages
    • window
    • tabbar
  • 页面
    • json
    • js
    • wxml
    • wxss
  • flex布局
    • display:flex
    • flex-direction: row、column
    • justify-content
    • align-item
  • 小程序开发
    • 标签(组件)
      • text
      • view
      • image
    • 样式
      • rpx 默认750rpx

今日概要

  • 指令
  • api
  • 页面

今日内容

1. 跳转

1.1 标签绑定点击事件

<view bindtap="clickMe" data-nid="123" data-name="harry">点我跳转</view>
Page({  /*** 点击绑定的时间*/clickMe(e) {var nid = e.currentTarget.dataset.nid// String *harry = e.currentTarget.dataset.nameconsole.log(nid)// 跳转wx.navigateTo({url: '/pages/redirect/redirect?id='+nid,})}
)}

1.2 页面跳转

// 跳转
wx.navigateTo({url: '/pages/redirect/redirect?id='+nid,
})

跳转到的界面如果想要接收参数,可以在onload方法中接收

Page({  /*** 生命周期函数--监听页面加载*/onLoad(options) {console.log(options.id)},)}

注意事项:只能跳转到非tabbar的界面

1.3 通过标签跳转

<navigator url="/pages/redirect/redirect?id=666">跳转到新界面</navigator>

2. 数据绑定

2.1 基本显示

  • wxml

    <view>
    当前头像:
    <image src="{{avatarUrl}}" style="height: 200rpx; width: 200rpx;"></image>
    </view>
    <view>当前用户名:{{name}}</view>
    <view bindtap="getUserName">获取当前用户</view>
    
  • 展示数据

      /*** 页面的初始数据*/data: {message: "你好呀,哈哈",name: "",avatarUrl: "/static/222.png"},
    

2.2 数据更新

changeData() {// 获取数据console.log(this.data.message)// 修改数据 错误的方式,这样只能改后端// this.data.message = "222"// 修改数据this.setData({message: "嗨,你好呀"})},

3. 获取用户信息

方式一

  • wxml
<view bindtap="getUserName">获取当前用户</view>
  • js
getUserName() {var that = thisconsole.log('获取当前用户信息')// 调用微信的接口, 获取用户信息wx.getUserInfo({success: function(res) {// 调用成功后触发var userInfo = res.userInfovar nickName = userInfo.nickNamevar avatarUrl = userInfo.avatarUrlvar gender = userInfo.gender //性别 0:未知、1:男、2:女var province = userInfo.provincevar city = userInfo.cityvar country = userInfo.countryconsole.log('success', avatarUrl)that.setData({name: nickName, avatarUrl: avatarUrl})},fail:function(res){// 调用失败后触发console.log('fail', res)}})},

方式二

  • wxml
<button open-type="getUserInfo" bindgetuserinfo="fetchInfo">获取信息button</button>
  • js
// pages/login/login.js
Page({/*** 页面的初始数据*/data: {name: "",avatarUrl: "/static/222.png"},fetchInfo:function() {var that = thisconsole.log('获取当前用户信息')// 调用微信的接口, 获取用户信息wx.getUserInfo({success: function(res) {// 调用成功后触发var userInfo = res.userInfovar nickName = userInfo.nickNamevar avatarUrl = userInfo.avatarUrlvar gender = userInfo.gender //性别 0:未知、1:男、2:女var province = userInfo.provincevar city = userInfo.cityvar country = userInfo.countryconsole.log('success', avatarUrl)that.setData({name: nickName, avatarUrl: avatarUrl})},fail:function(res){// 调用失败后触发console.log('fail', res)}})},/*** 生命周期函数--监听页面加载*/onLoad(options) {},/*** 生命周期函数--监听页面初次渲染完成*/onReady() {},/*** 生命周期函数--监听页面显示*/onShow() {},/*** 生命周期函数--监听页面隐藏*/onHide() {},/*** 生命周期函数--监听页面卸载*/onUnload() {},/*** 页面相关事件处理函数--监听用户下拉动作*/onPullDownRefresh() {},/*** 页面上拉触底事件的处理函数*/onReachBottom() {},/*** 用户点击右上角分享*/onShareAppMessage() {}
})

注意事项:

  • 想要获取用户信息,必须经过用户授权(button)

  • 已授权

  • 不授权,通过调用wx.opensettings

    // 打开配置,手动授权
    wx.openSetting({})
    

4. 获取用户的位置信息

  getLocalPath:function() {var that = thiswx.chooseLocation({success:function(res){console.log(res)that.setData({localpath: res.address})}})},

app.json

"permission": {"scope.userLocation": {"desc": "你的位置信息将被展示在小程序"}},"requiredPrivateInfos": ["getLocation"]

5. for指令

<!--pages/goods/goods.wxml-->
<text>商品列表</text>
<view>----------------------------</view>
<view><view wx:for="{{dataList}}">{{index}}-{{item}}</view><!-- index 和 item别名 --><!-- <view wx:for="{{dataList}}" wx:for-index="idx" wx:for-item="itemName">{{idx}}-{{itemName}}</view> -->
</view><view>----------------------------</view><view>{{userInfo.name}}{{userInfo.age}}  
</view><view>----------------------------</view><view><view wx:for="{{userInfo}}">{{index}}:{{item}}</view>
</view>

js

  /*** 页面的初始数据*/data: {dataList: ["小明", "harry", "小花"],userInfo: {name: "harry",age: 18}},

6. 获取图片

  • wxml

    <text bindtap="uploadImage">请上传图片</text>
    <view class="container"><image wx:for="{{imageList}}" src="{{item}}"></image>
    </view>
  • js

      uploadImage:function(){var that = thiswx.chooseImage({count: 6,sizeType: ["original", "compressed"],sourceType: ["album","camera"],success: (res) => {console.log(res)// 默认图片 + 新选择图片that.setData({imageList: that.data.imageList.concat(res.tempFilePaths)})},fail: (res) => {console.log(res)},complete: (res) => {console.log(res)},})},
    

注意:图片目前只是上传到内存。

总结

  • 标签(组件)

    • text
    • view
    • image
    • navigator,跳转到其他页面(非tabbar页面)
    • button
  • 时间

    • bindtap

      <view bindtap="func"></view>
      <view bindtap="func" data-xx="123"></view>
      
      func:function(e){e.currentTarget.dataset
      }
      
  • api

    • navigateTo
    wx.navigateTo({url: '/pages/redirect/redirect?id='+nid,})
    
    • openSetting
    wx.openSetting()
    
    • getUserInfo
     wx.getUserInfo({success: function(res) {}})
    • chooseLocation
    wx.chooseLocation({success:function(res){}
    })
    
    • chooseImage
    wx.chooseImage({count: 6,sizeType: ["original", "compressed"],sourceType: ["album","camera"],success: (res) => {}
    })
    
  • 数据绑定

  • for指令

    注意:setData + that

作业

1.拍卖详细页面

  • 拍卖列表页面通过for循环+后端数据展示信息

  • 点击拍卖列表中的某项拍卖时,需要将自己的id传递给拍卖详细页面

2.发布消息的页面

  • 上传图片
  • 选择位置
<textarea></textarea>

三、day03微信小程序

今日概要

  • 小程序
  • 后端api

今日详情

1. 数据绑定

  • 基本绑定
  • for循环

双向绑定

2.用户登录

day04微信小程序

今日概要

  • 用户登录、注册
  • 发布心情
    • 图片上传
  • 查看心情
  • 查看心情详情

今日详情

1. 用户登录

1.1 发送短信

1.2 登录

  • 小程序公共对象

    • App.js

      App({/*** 当小程序初始化完成时,会触发 onLaunch(全局只触发一次)*/onLaunch: function () {var userInfo = wx.getStorageSync('userInfo')if (userInfo){this.globalData.userInfo = userInfo}},globalData:{userInfo: null},initUserInfo:function(res, localUser){console.log(localUser.nickName)var info = {token: res.token,phone: res.phone,nickName: localUser.nickName,avatarUrl: localUser.avatarUrl}console.log(info)// 获取公共app, 赋值, 全局变量赋值this.globalData.userInfo = info  // {phone:xxx, token:xxx}// 在本地存储值wx.setStorageSync('userInfo', info)},delUserInfo:function(){this.globalData.userInfo = nullwx.removeStorageSync('userInfo')}
      })
      
      • 其他页面
      var app = getApp()Page({/*** 页面的初始数据*/data: {userInfo:null},/*** 生命周期函数--监听页面显示(每次都执行)*/onShow() {this.setData({userInfo: app.globalData.userInfo})},/*** 用户注销*/onClickLogout:function(){app.globalData.userInfo = nullwx.removeStorageSync('userInfo')this.setData({userInfo:null})}
      })
      

      注意:修改globalData之后, 其他页面已用的值不会自动变化,而是需要手动设置。

  • 本地存储

    wx.getStorageSync('userInfo')
    wx.setStorageSync('userInfo', info)
    wx.removeStorageSync('userInfo')
    
  • 页面调用栈

    var pages = getCurrentPages()
    prevPage = pages[pages.length-2]
    
  • 跳回上一个页面

    wx.navigateBack({})
    
  • 小程序页面的生命周期

    • onLoad(一次)
    • onShow(只要展示这个界面,就会自动加载)
    • onReady(一次)
    • onUnload(卸载, 小程序关闭时)
    • onHide(当小程序从前台进入后台,会触发 onHide, A界面跳转到B界面, A执行onHide)
    • onShow(当小程序启动,或从后台进入前台显示,会触发 onShow)
    • onError(当小程序发生脚本错误,或者 api 调用失败时,会触发 onError 并带上错误信息)
    • onPullDownRefresh(下拉刷新)
    • onReachBottom(上拉加载)
    • onShareAppMessage(用户点击右上角分享)
  • 全局app.js

    App({/*** 当小程序初始化完成时,会触发 onLaunch(全局只触发一次)*/onLaunch: function () {var userInfo = wx.getStorageSync('userInfo')if (userInfo){this.globalData.userInfo = userInfo}},globalData:{userInfo: null}
    })
  • wx:if指令

day05功能卡法

今日概要

  • 页面传值
  • 临时秘钥上传文件

今日详细

1. 页面传值

1.1 父页面向子页面传值

父页面:

/pages/xx/xxx?id=1

子页面:

onLoad:function(){}

1.2 子页面向父页面传值

子页面:

/*** 选择话题事件*/chooseTopic:function(e){var topicInfo = e.currentTarget.dataset.xxvar pages = getCurrentPages()var prevPage = pages[pages.length-2]// prevPage.setData({ topicText: topicInfo.title })prevPage.setTopicData(topicInfo)// 把这个值传给父界面wx.navigateBack({})},

注意:data-xx可以给事件传值

作业:

1.发布状态

1.打开图片进行本地预览
2.将本地图片上传到云
3.输入文字 & 选择相应信息
4.发布:必须上传完毕之后, 才允许点击发布按钮

1.1组件:进度条

<progress percent="{{precent1}}" ></progress>
<progress percent="{{precent2}}" activeColor="#DC143C"></progress>

1.2 修改data中的局部数据

/*** 页面的初始数据*/data: {imageList:[{id:1, title:'pic1', precent: 20 },{id:2, title:'pic2', precent: 40 },{id:3, title:'pic3', precent: 60 }],precent1:20,precent2:50},/*** 修改百分比*/changePercent:function(){var num = 2this.setData({["imageList[0].precent"]:80,["imageList[" + num + "].precent"]:90,["imageList[3].title"]:"哈哈哈"})},
<view wx:for="{{imageList}}"><view>{{item.title}}</view><progress percent="{{item.precent}}" ></progress>
</view><button bindtap="changePercent">更新</button>

1.3 闭包

/*** 闭包*/bibaoAction:function(){// 闭包1var dataList = [11, 2, 45]for (var i in dataList) {function v1(data){wx.request({url: 'xx',success:function(res){console.log(i)}})}v1(dataList[i])}// 闭包2for (var i in dataList) {(function(data){wx.request({url: 'xx',success:function(res){console.log(i)}})})(dataList[i])}},

2.列表查看

全局配置下拉刷新, app.json

  "window": {"enablePullDownRefresh": True},

局部下拉刷新, xxx.json

{"usingComponents": {},"enablePullDownRefresh": true
}

2.1 瀑布流

  • 方式1:自己构造

    <view style="width:50%">
    </view>
    <view style="width:50%">
    </view>
    
  • 方式2:设置样式css

    <!--pages/news2/news2.wxml-->
    <view class="container"><view class="item"><image mode="widthFix" src="https://gimg2.baidu.com/image_search/src=http%3A%2F%2Fpic1.win4000.com%2F%2Fpic%2F5%2F8d%2F5f31a37412.jpg&refer=http%3A%2F%2Fpic1.win4000.com&app=2002&size=f9999,10000&q=a80&n=0&g=0n&fmt=auto?sec=1664420148&t=2d54b8c73bb16e55720d4219ac4013d8"></image></view><view class="item"><image mode="widthFix" src="https://gimg2.baidu.com/image_search/src=http%3A%2F%2Fp6.itc.cn%2Fimages01%2F20200731%2Feafbff9ae5e94f939ab41097518a23c1.jpeg&refer=http%3A%2F%2Fp6.itc.cn&app=2002&size=f9999,10000&q=a80&n=0&g=0n&fmt=auto?sec=1664420148&t=878daea64d40ea5f0dd900121dd635ae"></image></view>
    </view>
    /* pages/news2/news2.wxss */
    .container{-moz-column-count: 2; /* 分为两列 */-webkit-column-count: 2;column-count: 2;-moz-column-gap: 20rpx;-webkit-column-gap: 20rpx;columns-gap: 20rpx
    }.container .item{break-inside: avoid-column;-webkit-column-break-inside: avoid;
    }.container .item .image{width: 100%;display: block;
    }
    

http://chatgpt.dhexx.cn/article/gKy4ALpo.shtml

相关文章

微信小程序快速搭建

1 1. 申请账号 申请账号 1. 进入小程序注册页根据指引填写信息和提交相应的资料&#xff0c;完成账号申请。 说明&#xff1a; 如果跳转后页面出现错误&#xff0c;请刷新访问。 2. 使用申请的微信公众平台账号登录小程序后台&#xff0c;单击开发 > 开发设置&#xff0c;…

【微信小程序】前端+后端 :第一篇(基于javaweb 案例)

博主&#xff1a;&#x1f44d;不许代码码上红 欢迎&#xff1a;&#x1f40b;点赞、收藏、关注、评论。 文章目录 一、创建javaweb&#xff08;idea&#xff09;二、servlet代码三、配置tomcat四、微信小程序端4.1、创建一个新的页面pages4.2、demo2.js4.3、demo2.wxml 五、运…

怎样创建微信小程序?创建小程序难不难?

小程序现在为众多的企业商家提供了营销上的巨大帮助&#xff0c;小程序也已经成为了这些企业商家的标配&#xff0c;即使是初创的企业商家都会先去了解怎样创建微信小程序&#xff0c;创建小程序难不难等问题&#xff0c;那么下面就给大家分享怎样创建微信小程序&#xff0c;创…

uniapp和springboot微信小程序开发实战:后端架构搭建之创建springboot项目

文章目录 使用STS创建boot项目引入项目依赖配置相关信息配置tomcat配置redis配置mysql数据库6.启动服务验证搭建环境使用STS创建boot项目 打开STS,新建Spring Starter Project项目,出现如下所示界面,根据提示填写图片上需要填写的内容。 引入项目依赖 <!-- redis -->…

微信小程序商城搭建小程序服装购物商城+后台

&#x1f345;文末获取联系&#x1f345; 目录 一、项目介绍 5.2.1 小程序端总体框架 二、项目相关截图 三、源码获取 一、项目介绍 计算机毕业设计微信小程序毕设项目之微信小程序服装商城后台管理系统_哔哩哔哩_bilibili计算机毕业设计微信小程序毕设项目之微信小程序服…

微信小程序搭建怎么做?流程是怎么样?【小程序搭建】

随着微信的日益普及&#xff0c;小程序成为了企业必备的营销工具。而在这个过程中&#xff0c;企业也需要搭建一个自己的小程序来进行推广和销售产品或服务。那么微信小程序搭建怎么做呢&#xff1f; 流程一&#xff1a;小程序账号的注册 注册小程序账号有两种方式&#xff1…

基于Python Django框架后端的微信小程序开发

刚做完一个股票信息服务类的微信小程序&#xff08;小程序名字“博股论基”&#xff0c;大家有兴趣可以搜一下&#xff09;&#xff0c;也有一些心得&#xff0c;在这里记录一下开发过程&#xff0c;算是个开发笔记&#xff0c;同时也希望能给需要的同学一些帮助。 ----------…

非常曲折的新手小白微信小程序springboot后端部署阿里云ESC服务器经历

最近因为参加了大学生“互联网”大赛&#xff0c;需要搭建微信小程序&#xff0c;但发现小程序云开发环境居然收费了&#xff01;于是转战springboot完成后端搭建&#xff0c;再用阿里云送的7个月学生免费服务器部署代码&#xff08;高校计划 - 免费学生云服务器&#xff09; 领…

微信小程序登录注册--python搭建后端

这个程序不连数据库&#xff0c;所以一旦python程序重启前面的注册就没用了 这个程序不连数据库&#xff0c;所以一旦python程序重启前面的注册就没用了 这个程序不连数据库&#xff0c;所以一旦python程序重启前面的注册就没用了 这里无脑简单介绍一下这个low到爆炸的小程序…

微信小程序入门04-后端脚手架搭建

我们上一篇已经介绍了权限系统的库表搭建&#xff0c;光有表还是不够的&#xff0c;我们还需要有一个后台系统和数据库进行交互。搭建后台的时候既需要选择使用什么语言&#xff0c;也需要选择框架。 框架分为前端框架和后端框架。在第一篇微信开发者工具搭建的时候我们其实前…

基于node搭建前端服务器,nodejs做微信小程序后端

利用小程序进行云开发必须安装node.js吗 任何一种后台开发语言都是可以的&#xff0c;只要它能够接收到小程序发出的请求&#xff0c;并且能够按照小程序指定的格式&#xff08;通常就是json&#xff09;返回数据给小程序就行。 但是&#xff0c;小程序官方专门为和php制作了…

微信小程序后台服务怎么搭建

小程序是目前最大的流量风口&#xff0c;与APP不同的是小程序的便捷&#xff0c;也就是小程序的核心竞争力与理念&#xff0c;不过小程序和APP的相同点都是属于应用&#xff0c;因此需要后台服务的支持&#xff0c;微信小程序的后台搭建常用到腾讯云&#xff0c;包括云数据库与…

3.1【微信小程序全栈开发课程】在本地搭建后端开发环境

第二章将前端页面的框架基本搭建好了&#xff0c;第三章&#xff0c;我们来做登录功能&#xff0c;登录功能需要在后端获取到用户信息&#xff0c;返回到前端。所以先来搭建后端开发环境 1、后端开发环境介绍 我们的项目用的是前后端分离开发 前端可以理解为微信端&#xff…

微信小程序如何搭建自己的后台(超详细,超完整)(上线必备)!!!

首先&#xff0c;今天是个特殊的日子&#xff0c;请让我先说上一句&#xff1a;幸运女神在微笑 思路 ①&#xff1a;首先我们需要拥有自己的 AppID &#xff08;有点废话了&#xff09;。 ②&#xff1a;我们需要有一个后台&#xff0c;即服务器。域名&#xff08;需备案&am…

人工智能(搜索策略)

有信息搜索(Informed Search)&#xff1a; 1. 又称为启发式搜索(Heuristic Search) 2. 搜索过程中利用与问题有关的经验信息 3. 引入估计函数(evaluation function)来估计节点位于解路径上的“希望”&#xff0c;函数值越小“希望”越大 4. 搜索过程中按照估价函数的大小对…

人工智能-搜索----启发式搜索

搜索算法的形式化描述&#xff1a; <状态state、动作motion、状态转移state transition、路径path、测试目标test target> 一、启发式搜索(有信息搜索)&#xff08;Heuristic Search&#xff09; 代表算法&#xff1a;贪婪最佳优先搜索&#xff08;Greedy best-first…

NeevaAI人工智能搜索引擎来了

***ChatGPT 无法为您提供实时数据或事实验证&#xff0c;而NeevaAI可以** 概述 无跟踪。没有偏见。搜索不受企业影响-这是Neeva的标语。Neeva是一款订阅制搜索引擎&#xff0c;是一款很小众的的搜索引擎&#xff0c;由前Google高管Sridhar Ramaswamy创立。Neeva的目标是为用户…

人工智能之搜索方法

人工智能之搜索方法 人工智能课程复习笔记专题 人工智能绪论 人工智能之知识表示 人工智能之搜索方法 人工智能之经典逻辑推理 人工智能之专家系统 人工智能之不确定推理方法 人工智能之机器学习 一、搜索的基本概念 1、搜索的含义 根据问题实际情况&#xff0c;不…

智能搜索引擎 | 驱动电商业务增长实践

开放搜索是阿里集团搜索业务中台&#xff0c;基于大数据深度学习在线服务体系打造的智能搜索云服务产品。拥有核心引擎、召回排序、搜索引导、充分开放等核心能力&#xff0c;可应用在电商行业、教育行业、内容行业等场景。目前帮助数千家客户搭建自己的搜索业务。 实践案例&a…

搜索。。。

1、mysql的like具有局限性 # 体现在功能不全&#xff0c;性能低。不适用于全文搜索&#xff08;日志或简历中搜索字段&#xff09;、没有相关性搜索排名等等 select name from goods WHERE name LIKE "%苹果%"2、试试elasticsearch 搜索 1、解决mysql like 的短板 …