根据文章标签相似度获取推荐文章
主要是使用similar_text函数判断两个字符串的相似度,排序后选出相似度排名前5为的数据
similar_text虽然对中文的相似度检测不是太准确,但是可以作为一个参考,挑选出相似文章
也可以直接对文章标题进行相似度检测获取推荐文章,通过文章标题的实现起来更简单一些
我这里给出的案例是根据标签相似度获取推荐文章的代码
//相关文章获取,使用similar_text函数$key='';//将本文的标签组合成字符串,因为每个标签在数据表是一条数据foreach ($tagsres as $v){$key=$key.','.$v['tags_name'];}//halt($key); //根据文章id分组获得各个文章的标签字符串$alltags=Db::query("select at_id,group_concat(tags_name) from blog_tags group by at_id");//$alltags=Db::table('blog_tags')->field('concat(tags_name),at_id')->select();//halt($alltags); //获取所有文章标签与该文章标签的相似度$percent=array();foreach ($alltags as $v){$percent[$v['at_id']]=similar_text($key,$v['group_concat(tags_name)']);} //去掉本文unset($percent[$at_id]); //对相似度从大到小排序,arsort可以保留key,rsort不行arsort($percent); //选取排名前五个 $percent=array_slice($percent,0,5,true);//halt($percent);$arr=array();foreach ($percent as $k=>$v){$arr[]=$k;}//halt($arr); //查询排名前5的文章$alsoarticle=Db::table('blog_article')->alias('a')->join('blog_cate b','a.cate_id=b.cate_id')->where(['a.at_id'=>$arr])->select();//halt($alsoarticle); $this->assign('alsoarticle',$alsoarticle);
转载于:https://www.cnblogs.com/jcydd/p/10765672.html
根据文章标签相似度获取推荐文章相关推荐
- 织梦php调用当前文章关键词,dedecms动态获取当前文章关键词关联相关文章,提升SEO优化内容关键词相关度...
摘要:dedecms系统使用默认的关键词关联相关文章时,关键词是写死不能变的,这样局限性太大了,如果把固定关键词替换为动态获取当前文章的关键词就更方便了-- dedecms默认可以使用arclist里 ...
- Django博客系统(推荐文章数据展示)
1. 添加文章浏览量数据 1.每次请求文章详情时给浏览量+1 try:article=Article.objects.get(id=id) except Article.DoesNotExist:re ...
- Word2Vec原理及应用与文章相似度(推荐系统方法)
Word2Vec与文章相似度(推荐系统方法) 学习目标 目标 知道文章向量计算方式 了解Word2Vec模型原理 知道文章相似度计算方式 应用 应用Spark完成文章相似度计算 1 文章相似度 在我们 ...
- 织梦自定义html文本,织梦自定义标签dede:sql根据自定义字段填的文章id获取相关文章...
这篇文章主要为大家详细介绍了织梦自定义标签dede:sql根据自定义字段填的文章id获取相关文章,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,有需要的朋友可以收藏方便以后借鉴. 有的时候我们需要 ...
- 织梦标签调用:最新文章、相关文章、推荐文章、热点文章、头条
DedeCMS最新文章: {dede:arclist row='10' titlelen='50'} [field:title/] {/dede:arclist} 如果要排除头条文章加上 noflag ...
- 推荐文章:机器学习:“一文读懂机器学习,大数据/自然语言处理/算法全有了...
PS:文章主要转载自CSDN大神"黑夜路人"的文章: http://blog.csdn.NET/heiyeshuwu/article/details/43483 ...
- 爬虫36计 之 1.2 爬取文章-简书首页推荐文章
文章目录 爬取文章-简书首页推荐文章 页面分析 页面源码分析 代码编写 获取第一页的内容 解析第一页面的方法:_parse_li() 获取下一页的方法:_handle_next_page() 实例运行 ...
- DayDayUp:三观一致必将取代血缘关系,成为新的人际纽带(博主推荐文章)
DayDayUp:三观一致必将取代血缘关系,成为新的人际纽带(博主推荐文章) 导读 考察一个人的判断力,主要考察他信息来源的多样性. 有无数的可怜人,长期生活在单一的信息里,而且是一种完全被扭曲的,颠 ...
- 脚本:获取CSDN文章的访问量
目标 获取所有文章名,链接,阅读人数,评论数 以适合pandas读取的格式存储之 分析 页面跳转 首页:http://blog.csdn.net/fontthrone?viewmode=list 第二 ...
最新文章
- 0基础学python难吗-0基础学Python有多难?该怎么入门?
- 《JS权威指南学习总结--3.8类型转换》
- Activity之间切换 以及传值
- python 桌面应用 启动缓慢_如何加快Python 应用的启动时间
- 搭建简易留言板过程中遇到的问题
- 【狂神css笔记】CSS介绍选择器
- PHP 7天前的时间戳
- Remoting示例
- Tinymce4 中Ajax多次加载时,会出现菜单在第二次进入时,显示的下拉菜单在左上角...
- Linux安装及破解密码
- c 编程语言技术优点,十大编程语言优缺点对比
- 计算机科学渗透信息论的思想,认知主义理论
- 第7章第25节:双图排版:两张图片横竖交错叠加排版 [PowerPoint精美幻灯片实战教程]
- xp 无线网络 搜索 服务器,WinXP系统搜索不到无线网络的解决方法【图】
- Spark MLBase分布式机器学习系统入门:以MLlib实现Kmeans聚类算法
- 使用CSS过滤器让透明的彩色png图像变纯白
- 老中医给程序员的养生指北|开奖啦
- 顶尖文案app_17个文案网站 5款短视频软件,自媒体人必备,直接拿走不谢
- 51单片机外围模块——LCD1602液晶模块
- 抖音素材哪里下-抖音素材哪里找-短视频素材库
热门文章
- properties 文件 属性值过长换行如理 测试读取配置文件
- asp.net 汉字转拼音的车祸现场
- IDM批量下载Earthdata上的哨兵数据(规避数据为HTML)
- 网络营销教程-SEO第八章 内部链接的优化操作
- 三元二次方程式x2+y 2=z2的正整数解x、y、z称为一组勾股数,又称为毕达哥拉斯三元数组。该方程式也称为“商高方程”或“毕达哥拉斯方程”。 试通过程序设计求指定区间[a,b]内的所有勾股数组。
- 基于FXLMS算法有源降噪毕业论文【matlab仿真】
- 女企业家陈宁:服务到客户心里,就能听到花开的声音
- linux 英文 资料,学习linux步骤(国外英文资料).doc
- 英德谋定红茶产业-农业大健康·李喜贵:功能性农业品牌之路2021-03-02
- 现代计算机结构模型及工作原理