- · 《新闻大学》栏目设置[09/01]
- · 《新闻大学》数据库收录[09/01]
- · 《新闻大学》收稿方向[09/01]
- · 《新闻大学》投稿方式[09/01]
- · 《新闻大学》征稿要求[09/01]
- · 《新闻大学》刊物宗旨[09/01]
基于微信公众号个性化新闻推送平台设计与实现
作者:网站采编关键词:
摘要:在信息化时代,紧张的生活节奏使得人们对于新闻的关注程度大大降低,但使用微信[1]的人却越来越多,微信公众号又提供了丰富的网页接口给第三方平台,可以方便地与用户进行交互
在信息化时代,紧张的生活节奏使得人们对于新闻的关注程度大大降低,但使用微信[1]的人却越来越多,微信公众号又提供了丰富的网页接口给第三方平台,可以方便地与用户进行交互,利用这个特性,可以开展基于微信公众号的个性化新闻推送服务。
在目前的推送服务产品中来看,推送服务大部分都是APP的附属产物或者面向电脑端的服务[2],而且几乎都是对自身平台的数据进行推送,对于消息聚合再对用户进行推送的平台发展得非常好的是百度APP,对文章内关键词,新闻头条等分析非常准确,因为基于搜索引擎行业的多年的积淀表现比较亮眼。而如今的微信公众号大部分都是通过发表推文吸引读者关注和阅读,做个性化信息推送的公众号较少,而QQ 看点,百度推荐,今日头条多是其平台自己的文章,信息渠道较窄,存在商业竞争情况下,信息往往不全,无法有效聚合信息。
利用微信的用户快速推广用户群体,而且在内容优质的情况下使用微信作为介质可以提高用户黏性,可以简化用户对于自己关注部分的新闻浏览。目前使用微信公众号作为介质做聚合内容的智能推荐平台的厂商非常少,传统的智能信息推送平台基本无法做到多平台聚合内容,用户使用纯移动端网页无法做到不错的用户体验。有的商家为了推广APP,甚至强制用户使用APP 才能体验全部功能。开发这样的基于微信的新闻推送系统让用户可以随时查看自己所关注的文章或新闻又不需要额外安装其他的APP 为移动端的新闻阅读带来极大的方便。
基于微信公众号的个性化新闻推送为关注了该微信公众号的用户提供一个推送平台,根据用户的兴趣去搜集信息并定期推送给用户[5]。使用微信公众号进行平台的推广和运维,从管理者角度来看更便捷;从开发者角度来看可省去用户注册的麻烦,但开发者对用户管理模块的开发及维护成本却高于正常开发。但新领域新平台与微信公众号进行对接可以更快速让更多的更大用户群体接纳,也可以拓宽微信公众平台的业务多样性。
本文提出的个性化新闻推送想,利用了目前的多数互联网新闻平台提供RSS 接口[4]。该接口是一个简易信息聚合,基于XML标准的一种规范,个性化新闻推送系统利用这种规范使用爬虫技术[3]合法的抓取新闻平台的文章摘要信息。再通过用户个性化特点推送给相关用户。
1 系统总体框架
本系统由爬虫自动爬取选定的RSS源所提供文章,然后系统进行分析处理后根据用户个性化特点进行推送。文章的RSS源由管理员手动维护,将需要RSS订阅入口链接添加至系统中,系统的RSS爬虫服务会自动运行抓取RSS源中的文章信息。整个系统框架流程见图1。
图1 个性化新闻推送系统框架
系统采用PHP7.0和[5]框架进行开发。PHP是目前小型网站开发与搭建的首选语言[6]。ThinkPHP 则则是一个基于PHP 的MVC 开发框架,它自己有提供模型层和控制器完整的接口,也有一套完整的模板引擎,在开的时候仅仅使用一个框架就可以完成MVC 的所有层次[7][8][9]。前端采用LayUI,其有着自己的模块定义和引用方式,强大的弹出层和丰富的官方组件使得开发变得更快更好[10]。
图2 爬虫获取新闻文章工作流程
2 新闻文章的获取
公众号推送的文章来源于别的新闻网站,如果直接从别的地方抓取文章,不同的网站不能使用同一套规则,而且网站一旦改版,规则也要重新进行修改,平台的维护需要开发人员,这导致开发和维护成本会非常高。大多数新闻网站都支持RSS协议的文章输出,利用这个协议,可以实现只写一套规则就可以抓取所有服务列表中RSS 站点的文章了。维护方面就只需要管理员将RSS源的链接添加至平台中。从列表中查询出RSS最短更新周期的配置,然后根据这个值,查询最后更新时间在刚刚查询出来的结果时间前的所有记录。再调用爬虫方法去抓取远程服务器的列表数据,返回结果为一个XML 格式的数据,但需要比较复杂的流程去处理编码问题。经过处理后,将文章信息读出并储存。文章信息包括链接、标题、内容描述、作者、发布时间等信息。爬虫工作流程详细可见图2所示。
3 个性化推送服务
微信公众平台目前分成消息接口和通用接口两大模块[11],本服务使用的是消息接口中的微信客服接口,内容需要做到个性化,所以不能使用群发功能,但客服接口有限制:只有用户主动与微信公众号进行互动后的48 小时内才能调用该接口,只需要用户每两天与公众号进行互动(公众号可发消息提示等诱发性互动)。服务开始执行的时候从文章库中取出当前时间大于或等于更新时间的所有记录,然后调用生成用户推荐文章的算法接口,将得到的文章使用微信客服接口推送给用户,不论成功与否都将推送结果写入日志,然后将表中对应记录的下次推送时间字段的内容修改为用户设置的所有推送时间中的下一次推送时间的时间戳,好方便服务在调用时做时间的判断。
文章来源:《新闻大学》 网址: http://www.xwdxzz.cn/qikandaodu/2021/0115/797.html