微信小程序制作
当前位置:网站首页 > 公众号热文 > 西安微信公众号开发新闻媒体如何实现个性化精准推送 返回列表

西安微信公众号开发新闻媒体如何实现个性化精准推送

作者:admin 时间:2022-04-06 浏览量:270

在信息化时代,紧张的生活节奏使得人们对于新闻的关注程度大大降低,但使用微信[1]的人却越来越多,微信公众号又提供了丰富的网页接口给第三方平台,可以方便地与用户进行交互,利用这个特性,可以开展基于微信公众号的个性化新闻推送服务。
在目前的推送服务产品中来看,推送服务大部分都是APP的附属产物或者面向电脑端的服务[2],而且几乎都是对自身平台的数据进行推送,对于消息聚合再对用户进行推送的平台发展得非常好的是百度APP,对文章内关键词,新闻头条等分析非常准确,因为基于搜索引擎行业的多年的积淀表现比较亮眼。而如今的微信公众号大部分都是通过发表推文吸引读者关注和阅读,做个性化信息推送的公众号较少,而QQ看点,百度推荐,今日头条多是其平台白己的文章,信息渠道较窄,存在商业竞争情况下,信息往往不全,无法有效聚合信息。
利用微信的用户快速推广用户群体,而且在内容优质的情况下使用微信作為介质可以提高用户黏性,可以简化用户对于自己关注部分的新闻浏览。目前使用微信公众号作为介质做聚合内容的智能推荐平台的厂商非常少,传统的智能信息推送平台基本无法做到多平台聚合内容,用户使用纯移动端网页无法做到不错的用户体验。有的商家为了推广APP,甚至强制用户使用APP才能体验全部功能。开发这样的基于微信的新闻推送系统让用户可以随时查看自己所关注的文章或新闻又不需要额外安装其他的APP为移动端的新闻阅读带来极大的方便。
基于微信公众号的个性化新闻推送为关注了该微信公众号的用户提供一个推送平台,根据用户的兴趣去搜集信息并定期推送给用户[5]。使用微信公众号进行平台的推广和运维,从管理者角度来看更便捷;从开发者角度来看可省去用户注册的麻烦,但开发者对用户管理模块的开发及维护成本却高于正常开发。但新领域新平台与微信公众号进行对接可以更快速让更多的更大用户群体接纳,也可以拓宽微信公众平台的业务多样性。
本文提出的个性化新闻推送想,利用了目前的多数互联网新闻平台提供RSS接口[4]。该接口是一个简易信息聚合,基于XML标准的一种规范,个性化新闻推送系统利用这种规范使用爬虫技术[3]合法的抓取新闻平台的文章摘要信息。再通过用户个性化特点推送给相关用户。
1系统总体框架
本系统由爬虫自动爬取选定的RSS源所提供文章,然后系统进行分析处理后根据用户个性化特点进行推送。文章的RSS源由管理员手动维护,将需要RSS订阅入口链接添加至系统中,系统的RSS爬虫服务会自动运行抓取RSS源中的文章信息。整个系统框架流程见图l。
系统采用PHP7.0和ThinkPHP5.Oc5]框架进行开发。PHP是目前小型网站开发与搭建的首选语言[6]。ThinkPHP则则是一个基于PHP的MVC开发框架,它自己有提供模型层和控制器完整的接口,也有一套完整的模板引擎,在开的时候仅仅使用一个框架就可以完成MVC的所有层次[7][8][9]。前端采用LayUI,其有着自己的模块定义和引用方式,强大的弹出层和丰富的官方组件使得开发变得更快更好[10]。
2新闻文章的获取
公众号推送的文章来源于别的新闻网站,如果直接从别的地方抓取文章,不同的网站不能使用同一套规则,而且网站一旦改版,规则也要重新进行修改,平台的维护需要开发人员,这导致开发和维护成本会非常高。大多数新闻网站都支持RSS协议的文章输出,利用这个协议,可以实现只写一套规则就可以抓取所有服务列表中RSS站点的文章了。维护方面就只需要管理员将RSS源的链接添加至平台中。从列表中查询出RSS最短更新周期的配置,然后根据这个值,查询最后更新时间在刚刚查询出来的结果时间前的所有记录。再调用爬虫方法去抓取远程服务器的列表数据,返回结果为一个XML格式的数据,但需要比较复杂的流程去处理编码问题。经过处理后,将文章信息读出并储存。文章信息包括链接、标题、内容描述、作者、发布时间等信息。爬虫工作流程详细可见图2所示。
3个性化推送服务
微信公众平台目前分成消息接口和通用接口两大模块[11],本服务使用的是消息接口中的微信客服接口,内容需要做到个性化,所以不能使用群发功能,但客服接口有限制:只有用户主动与微信公众号进行互动后的48小时内才能调用该接口,只需要用户每两天与公众号进行互动(公众号可发消息提示等诱发性互动)。服务开始执行的时候从文章库中取出当前时间大于或等于更新时间的所有记录,然后调用生成用户推荐文章的算法接口,将得到的文章使用微信客服接口推送给用户,不论成功与否都将推送结果写入日志,然后将表中对应记录的下次推送时间字段的内容修改为用户设置的所有推送时间中的下一次推送时间的时间戳,好方便服务在调用时做时间的判断。
个性化新闻推送中个性化技术研究比较活跃。基于协同过滤算法的文献[11]改进了文本相似性的判断,基于深度学习算法的文献[12]的研究了目前主流的个性化新闻推送,以及还有采用微博数据进行用户建模的能包含更多活跃和丰富的用户特征。本文的个性化特点主要体现在文章的标签和用户标签上。
标签类别由系统初始设定也可后期增加。通过对文本进行分析得到的文章的标签。用户标签表中的权重记录为用户i对该标签i的偏好,由用户对该标签的点击与时间的函数值在p篇文章上的累加和aij=∑aij。用户未阅读该文,则ai=0,否则取某个时间函数,离当前时间越近则该值越大,离现在越远该值越小,体现出用户兴趣随时间推移的关系。在用户关注了多个标签的情况下,该记录对用户的具体习惯有比较稳定的数据。首先计算同当前用户的兴趣权值差距,计算公式如下:   d=∑(aij一aij)2((l)
其中i为用来比较的用户,i为标签,k为当前用户。取(1最小的M个邻居,然后在基于系统过滤算法在M个用户中利用皮尔逊相关系数计算用户相似性,求出TOP-N邻居,然后利用这N个邻居,作为参照用户,推荐参照用户阅读最多的文章。
文章表中有记录所有用户的点击数,点击数高的说明该新闻的关注度比较高,也比较容易得到文章对应的标签用户群的关注,其次,文章的时效性也会有很大的影响,新闻的时效性大约是一天内,其他类型的根据RSS源的更新频率,一般取到最近发布的50条记录的时间,这个时间段内取的文章的优先度很高,根据以上几个要点从候选列表中取若十条对应用户未访问文章加入文章表中,并返回这几条筛选排序后的结果,排序中对含图片的文章有更高的优先级,更符合移动端用户阅读习惯,整套算法大部分在SQL语句中完成,减少了程序与数据库的交互可以更大提高程序的运行效率,该接口完成后将在两个业务场景中被调用,其一是自动推送服务中,其二是用户在首页浏览文章时下拉触发刷新推荐文章。标签管理员可以手动在后台的RSS列表配置中进行修改。标签表的权重字段是rss表中对应标签的记录数。
本文设计并实现了一个基于微信公众号的个性化信息推送系统,利用爬虫爬取广泛的可用的RSS订阅来源,然后利用新闻标签和用户的爱好标签,以及新闻的时效性和热门性,进行个性化推荐。目前这方面的基于微信公众号的信息推送系统较少,本系统可以为许多渴望更多可靠信息来源,没时间进行信息筛选客户提供更高效更低成本的信息来源,并且在用户不需要的情况下不打扰客户,在客户需要时随时激活提供最新的服务。系统的个性化服务基于标签,标签的更新体现了用户对新闻推送的反馈,长期的使用将更为精确。未来在个性化服务方面将更多的挖掘文本的具体信息,提取更精确的文本特征,对用户个性特征也将进行更多维的描述,以达到更准确的信息推送。本文详细描述了系统的设计开发过程,也可为想开发此类程序的初学者提供借鉴。

联系方式:18066528545   029-89298792

阅读过此文章的读者,还阅读过下面的文章

  • 小程序与原生APP那个好?下面我们就来一起了解一下小程序与原生APP那个好。以下是所整理的小程序与原生App的内容,希望对你有所帮助。

    小程序的优点:

    基于微信平台开发,享受微信自带的流量,这个优点最大
    无需安装,只要打开微信就能用,不占手机内存,体验好
    开发周期段,一般最多一个月就可以上线完成
    开发所需的资金少,所需资金是开发原生APP的一半不到
    小程序名称是唯一的,在微信的搜索里权重很高
    容易上手,只要之前有HTML+CSS+JS基础知识,写小程序基本没有大问题
    基本不需要考虑兼容性问题,只要微信可以正常运行的机器,就可以运行小程序
    发布,审核高效,基本上午发布审核,下午就审核通过,升级简单,支持灰度发布
    开发文档完善,社区活跃
    支持插件式开发,一些基本功能可以开发成插件,供多个小程序使用
    小程序的缺点:
    局限性很强(比如页面大小不能超过1M,不能打开超过5个层级的页面,样式单一,小程序的部分组件已经是成型的- 了,样式不能修改,比如幻灯片,导航)只能依赖于微信依托与微信,无法开发后台管理功能
    不利于推广,推广面窄,不能分享朋友圈,只能分享给朋友,附近小程序推广,其中附加小程序也收到微信限制
    后台调试麻烦,因为API接口必须https请求,且公网地址,也就是说后台代码必须发布到远程服务器上;当然我们可以修改host进行dns映射把远程服务器转到本地,或者开启tomcat远程调试;不管怎么说终归调试比较麻烦
    前台测试有诸多坑,最头疼莫过于模拟器与真机显示不一致
    js引用只能使用绝对路径,不能操作DOM
    原生App优点:
    原生的相应速度快
    对于有无网络操作时,譬如离线操作基本选用原生开发
    需要调用系统硬件的功能(摄像头,拨号,短信蓝牙…)
    在无网络或者弱网情况下体验好
    原生App缺点:
    开发周期长,开发成本高,需要下载
  • 小程序和Vue写法的区别?下面我们就来一起了解一下小程序和Vue写法的区别。以下是我所整理的小程序和Vue写法的区别,希望对你有所帮助。

    遍历的时候:

    • 小程序wx:for=“list”,
    • 而Vue是v-for=“item in list”

    调用data模型(赋值)的时候:

    • 小程序:this.data.item // 调用,

    • 小程序:this.setDate({item:1})//赋值

    • Vue:this.item //调用,

    • Vue:this.item=1 //赋值

  • 小程序调用后台接口遇到那些问题?下面我们就来一起了解一下小程序调用后台接口遇到那些问题。以下是所整理的小程序调用后台接口遇到的问题,希望对你有所帮助。

    数据的大小限制,超过范围会直接导致整个小程序崩溃,除非重启小程序

    小程序不可以直接渲染文章内容这类型的html文本,显示需要借助插件
    注:插件渲染会导致页面加载变慢,建议在后台对文章内容的html进行过滤,后台直接处理批量替换p标签div标签为view标签,然后其他的标签让插件来做
  • 分析微信小程序的优劣势?下面我们就来一起简单的了解一下微信小程序的优劣势。下面是所整理的微信小程序的优劣势,希望对你有所帮助。

    优势:

    容易上手,基础组件库比较全,基本不需要考虑兼容问题
    开发文档比较完善,开发社区比较活跃,支持插件式开发
    良好的用户体验,无需下载,通过搜索和扫一扫就可以打开,打开速度快,安卓上可以添加到桌面,与原生APP差不多
    开发成本比APP要低
    为用户提供良好的保障(小程序发布,严格是审查流程)

    劣势:
    限制较多,页面大小不能超过1M,不能打开超过5个层级的页面
    样式单一,部分组件已经是成型的,样式不可修改,例如:幻灯片,导航
    推广面窄,不能分享朋友圈,只能通过分享给朋友,附加小程序推广
    依托与微信,无法开发后台管理功能
    后台调试麻烦,因为api接口必须https请求且公网地址
    真机测试,个别安卓和苹果表现迥异,例如安卓的定位功能加载很慢

  • 简单描述下微信小程序的 相关文件类型。下面我们就来一起了解一下微信小程序的 相关文件类型。以下是所整理的微信小程序的 相关文件类型,希望对你有所帮助。

    wxml 模板文件,是框架设计的一套标签预言,结合基础组件,事件系统,可以构建出页面的结构

    wxss 样式文件,是一套样式语言,用于描述WXML的组件样式
    js脚本逻辑文件。逻辑处理网络请求
    json配置文件,小程序设置,如页面注册,页面标题及tabBar
    app.json 整个小程序的全局配置,包括:
    pages:\[所有页面路径]
    网络设置(网络超时事件)
    页面表现(页面注册)
    window:(背景色,导航样式,默认标题)
    底部tab等
    app.js 监听并处理小程序的生命周期函数,声明全局变量等
    app.wxss 全局配置的样式文件

  • 请谈谈原生开发小程序,wepy,mpvue的对比?下面我们就来一起了解一下原生开发小程序,wepy,mpvue的对比。个人认为,如果是新项目,且没有旧的 h5 项目迁移,则考虑用小程序原生开发,好处是相比于第三方框架,坑少。

    而如果有 老的 h5 项目是 vue 开发 或者 也有 h5 项目也需要小程序开发,则比较适合 wepy 或者 mpvue 来做迁移或者开发,近期看wepy几乎不更新了,所以推荐美团的mpvue。
    而如果如果团队前端强大,自己做一套框架也没问题。

029-86195145 180 6652 8545 西安嘉瑞德网络科技公司
工作时间:周一到周六 8:30-18:30
邮箱:2528823962@qq.com
QQ:2528823962
地址:陕西省西安市未央元朔路明丰伯马都A座10820室
  • 微信小程序制作微信二维码
    扫码咨询
Copyright © 2015 西安嘉瑞德网络科技有限公司 陕ICP备17015187号-1