千家信息网

vue中如何实现后台进程定时爬取头条文章

发表于:2025-01-31 作者:千家信息网编辑
千家信息网最后更新 2025年01月31日,这篇文章将为大家详细讲解有关vue中如何实现后台进程定时爬取头条文章,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。首先打开后端项目,首先在项目根目录创
千家信息网最后更新 2025年01月31日vue中如何实现后台进程定时爬取头条文章

这篇文章将为大家详细讲解有关vue中如何实现后台进程定时爬取头条文章,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

首先打开后端项目,首先在项目根目录创建文件background_task.js用于调取第三方API以及业务逻辑的处理,在dao层创建文件background_task.js用于数据库业务逻辑处理。然后进入app.js,在顶部引入background_task.js文件:

var backgroudTask = require('./backgroud_task');

然后在底部封装startBackgroundTask()进行定时任务的调用:

app.startBackgroundTask = function() {    backgroudTask.start();}

进入bin/www文件,调用app.startBackgroundTask();

进入项目根目录的background_task文件,书写进程启动方法和停止方法,启动的时候调用runOnce方法,在runOnce方法中实现爬取数据的业务逻辑。进程每15分钟爬取一次:

接下来调用获取新闻头条的接口在路由层我们书写方法get_news()直接调用dao层方法,然后在runOnce()中调用get_news(),将所有业务逻辑在dao层实现:

进入dao层,书写get_news()方法。首先调用第三方API获取新闻数据,发起请求之前封装好了baseRequest()方法:

接下来调取第三方API获取新闻数据:

我们可以重启服务看下控制台输出:

可以看到返回的每一条数据都有一个唯一的uniquekey,我们可以根据uniquekey参数判断数据库是否存在本篇文章来进行筛选重复数据:

根据is_exist参数判断本篇文章是否存在于数据库,如果不存在则保存到数据库:

我们插入文章数据时status设置为2,因为我们自己发表文章status设置为1。这里区分状态码是由于自己上传的文章与爬取过来的文章参数不一致,需要对前端界面展示及后端接口进行适配。我们可以查看数据库是否正常插入数据:

接下来我们进入获取文章列表接口,参数多返回url以及uniquekey

后台管理文章列表只能返回当前用户status1的文章,参数多返回url以及uniquekey

接下来回到vue项目,在首页点击阅读全文的时候对status1则正常进入文章详情界面,如果文章status2则直接跳转到对应文章的url

到这里我们就成功实现一个进程实时同步第三方新闻头条文章。并且对前端也做了适当适配,丰富了首页板块内容。我们最后可以看下目前的首页效果:

关于vue中如何实现后台进程定时爬取头条文章就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

文章 数据 方法 进程 参数 数据库 文件 头条 接下来 业务 新闻 第三方 逻辑 项目 后台 内容 首页 前端 接口 时候 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 河南警察学院网络安全系 中国现行网络安全法律规定 易语言数据库人员管理 访问不了内网服务器 中国信通院网络安全产业规模 网络安全形势的战略 装了erp的服务器 数据库中什么是实体 沛县手机软件开发招聘 浪潮服务器设置管理口地址 北仑直销软件开发工程 当前可采取的网络安全技术有哪些 网络安全 学生调查问卷 mc精致存储服务器 数据库建表时类型选择什么 数据库的连接语句 添加到云服务器是什么意思 赵建锋互联网科技教育平台 广东牛阿网络技术公司 数据库和人的关系是什么意思 数据库连接会超时失效麻 网络安全管理局王梅芳 数据库中修改表中内容 云南省税务局网络安全维护 东南大学网络安全空间学院怎么样 替换数据库中同一个关键字 查看数据库的命令及语句是 福建代理服务器 自学网络技术培训班 惠普服务器数据备份
0