[发明专利]一种页面渲染方法及装置有效
申请号: | 201811612452.X | 申请日: | 2018-12-27 |
公开(公告)号: | CN109656670B | 公开(公告)日: | 2020-11-20 |
发明(设计)人: | 许宏斌 | 申请(专利权)人: | 广州华多网络科技有限公司 |
主分类号: | G06F9/451 | 分类号: | G06F9/451 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 张春水;唐京桥 |
地址: | 511442 广东省广*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 页面 渲染 方法 装置 | ||
1.一种页面渲染方法,其特征在于,包括:
通过反向代理工具判断获取到的页面访问请求是否为爬虫,若是,则执行下一步;
通过Nodejs服务向所述反向代理工具发送页面加载中指令,通过Nodejs服务调用Chrome内核访问原始页面,判断所述页面访问请求的业务类型,若为静态业务,则确定与所述页面访问请求对应的预置脚本,调用Headless执行所述预置脚本完成对原始页面的渲染,得到同构页面,若为延迟业务,则在等待相应的延迟时间后,确定与所述页面访问请求对应的预置脚本,调用Headless执行所述预置脚本完成对原始页面的渲染,得到同构页面;
通过Nodejs服务向所述反向代理工具发送页面加载完成指令和所述同构页面,以完成爬虫操作和页面显示。
2.根据权利要求1所述的页面渲染方法,其特征在于,所述预置脚本为JavaScript脚本。
3.根据权利要求1所述的页面渲染方法,其特征在于,所述通过Nodejs服务向所述反向代理工具发送页面加载中指令,根据预置脚本对原始页面进行渲染,得到同构页面之前还包括:
通过Nodejs服务判断所述页面访问请求所请求的页面在redis集群内是否存在缓存,若是,则在所述redis集群读取缓存生成对应的同构页面并发送至所述反向代理工具,若不是,则执行下一步。
4.根据权利要求3所述的页面渲染方法,其特征在于,所述通过Nodejs服务判断所述页面访问请求所请求的页面在redis集群内是否存在缓存,若是,则在所述redis集群读取缓存生成对应的同构页面,若不是,则执行下一步之前还包括:
通过Nodejs服务判断所述页面访问请求所请求的页面域名是否为白名单,若是,则判断所述页面访问请求所请求的页面在redis集群内是否存在缓存,若不是,则向反向代理工具返回拒绝页。
5.根据权利要求1所述的页面渲染方法,其特征在于,所述通过Nodejs服务向所述反向代理工具发送页面加载完成指令和所述同构页面,以完成爬虫操作和页面显示之后还包括:
通过Nodejs服务将所述同构页面储存入redis集群中。
6.一种页面渲染装置,其特征在于,包括:
反向代理工具,用于判断获取到的页面访问请求是否为爬虫,若是,则触发Nodejs服务;
Nodejs服务,用于向所述反向代理工具发送页面加载中指令,通过Nodejs服务调用Chrome内核访问原始页面,判断所述页面访问请求的业务类型,若为静态业务,则确定与所述页面访问请求对应的预置脚本,调用Headless执行所述预置脚本完成对原始页面的渲染,得到同构页面,若为延迟业务,则在等待相应的延迟时间后,确定与所述页面访问请求对应的预置脚本,调用Headless执行所述预置脚本完成对原始页面的渲染,得到同构页面;
所述Nodejs服务还用于向所述反向代理工具发送页面加载完成指令和所述同构页面,以完成爬虫操作和页面显示。
7.一种电子设备,其特征在于,包括处理器和存储器,所述存储器上存储有计算机程序指令,当所述程序指令被处理器执行时实现如权利要求1至权利要求5中任一项所述的页面渲染方法。
8.一种计算机可读存储介质,其特征在于,所述介质上存储有计算机程序指令,当所述程序指令被处理器执行时实现如权利要求1至权利要求5中任一项所述的页面渲染方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广州华多网络科技有限公司,未经广州华多网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811612452.X/1.html,转载请声明来源钻瓜专利网。