一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

面向社交平台的数据采集方法与系统

2022-04-30 06:18:55 来源:中国专利 TAG:


1.本发明涉及网络数据采集技术领域。更具体地说,本发明涉及一种面向社交平台的数据采集方法与系统。


背景技术:

2.随着互联网技术的发展,网络成为新兴舆论场,新兴媒体终端和自媒体平台层出不穷。网站和app开发技术也呈现多样性,各平台使用的页面开发技术和编程框架五花八门,没有统一的标准。新兴媒体通常没有直接暴露在外面的采集接口,对个别存在数据接口的平台通常接口权限难以申请或每日接口请求数量有上限。另一方面,在数据加载上,新媒体平台为支持富媒体页面和高效响应的需求一般采用动态异步加载的方法,简单的抓包很难获取全部的网页内容。传统的网络采集技术立足于对新闻、论坛、博客等平台的采集,这些平台的网页结构一般比较稳定,通常可以直接获取网页的源码和dom树,但难以应用于新兴平台实现高效的数据采集。
3.新媒体社交平台通常在web端和移动app端同时铺开,web端展示相对开放的内容,如热点榜单、群组等,而app端侧重于信息交流。现有的采集方法面向web端数据采集,不能支持对app端数据获取和网页异步数据加载的请求,对于多变的媒体很难兼容。
4.发明人在进行社交平台数据采集技术研究时,发现现有技术通常针对特定的终端平台进行分析,形成面向特定平台的数据流量获取技术,这类技术定向解决某平台的采集问题和采集需求,只能使用web端或app端进行数据采集,无法获取全量的平台数据。


技术实现要素:

5.本发明的一个目的是提供一种面向社交平台的数据采集方法与系统,通过模拟用户发出的浏览器访问请求采集web页面数据,通过设置网络代理拦截模拟用户发出的app访问请求获得相应http/https请求,采集app页面数据,再将web页面数据和app页面数据经页面解析、对齐融合后更新,获得全量的社交平台数据,本发明的数据采集方法同时适用于web端和app端的社交平台数据采集。
6.为了实现根据本发明的目的和其它优点,提供了一种面向社交平台的数据采集方法,包括以下步骤:
7.1)在主机上通过模拟用户发出的浏览器访问请求获取社交平台上相关页面的web页面数据;
8.2)将真机或模拟器连接主机,模拟用户发出的app访问请求,在主机上设置网络代理,拦截app访问请求获得相应的http/https请求,获取社交平台上相关页面的app页面数据;
9.3)将web页面数据和app页面数据分别进行页面解析、数据对齐融合,输出并存入数据库。
10.优选的是,所述的面向社交平台的数据采集方法,步骤1)中通过selenium模拟用
户发出的浏览器访问请求,通过参数请求子模块模拟用户对相关页面的请求参数,selenium调用请求参数获取web页面数据。
11.优选的是,所述的面向社交平台的数据采集方法,使用mitmproxy为网络代理。
12.优选的是,所述的面向社交平台的数据采集方法,web页面数据和app页面数据通过数据解析、字段提取和数据清洗进行页面解析获得相应的标准数据,再以标准数据的相关属性为标识进行数据对齐融合更新。
13.本发明还提供了一种面向社交平台的数据采集系统,包括:
14.web数据采集模块,其包括:
15.模拟浏览器子模块,用于模拟用户发出的浏览器访问请求,以及获取社交平台上相关页面的web页面数据;
16.参数请求子模块,与模拟浏览器子模块连接,参数请求子模块通过模拟浏览器子模块模拟用户的浏览器访问请求触发参数请求,模拟用户对相关页面的请求参数,模拟浏览器子模块调用请求参数获取web页面数据;
17.第一页面解析子模块,与模拟浏览器子模块连接,用于对web页面数据进行数
18.据解析、字段提取和数据清洗以获得web标准数据;
19.app数据采集模块,其包括:
20.环境配置子模块,其与主机连接,环境配置子模块为模拟器或真机,用于模拟用户发出的app访问请求;
21.请求拦截子模块,与环境配置子模块连接,用于主机设置网络代理,拦截环境配置子模块模拟用户发出的app访问请求获得相应的http/https请求,获取社交平台上相关页面的app页面数据;
22.第二页面解析子模块,与请求拦截子模块连接,用于对app页面数据进行数据解析、字段提取和数据清洗以获得app标准数据;
23.双终端数据对齐融合模块,与第一页面解析子模块、第二页面解析子模块连接,用于将web标准数据与app标准数据对齐融合,输出并存入数据库。
24.优选的是,所述的面向社交平台的数据采集系统,模拟浏览器子模块为selenium。
25.优选的是,所述的面向社交平台的数据采集系统,使用mitmproxy为网络代理。
26.本发明至少包括以下有益效果:
27.(1)本发明面向社交平台的数据采集方法与系统,能够同时适用于web端和app端,可以实现双终端的数据补全,获得全量的社交平台数据,同时,本发明提出的技术框架能够兼容不同新型终端的采集,减少反复分析网页结构带来的人力和物力开销;
28.(2)社交平台通常包含大量的异步加载,依赖简单的收发包难以获取全部的网页信息,还需要解析javascript进行网页渲染,本发明通过selenium可以直接模拟用户请求,获取完整的网页内容和源码,无需异步加载便能获取全部的web页面数据;
29.(3)对于移动端数据的采集,通常可以采用抓包的方式获取其当前的请求接口,但该接口会存在失效时限,在一定时间之后难以进行采集,本发明基于模拟器或真机的采集技术可以支持在线的用户授权,能够及时顺利通过接口的动态验证,保证长时间的有效采集;
30.(4)web端和app端的平台数据具有各自的倾向,存在网页数据不如移动端数据齐
全或移动端数据缺失的情况,双终端采集到的数据经对齐融合后能得到一份完整的社交平台数据。
31.本发明的其它优点、目标和特征将部分通过下面的说明体现,部分还将通过对本发明的研究和实践而为本领域的技术人员所理解。
附图说明
32.图1是本发明一个技术方案中面向社交平台的数据采集系统的框架结构示意图。
具体实施方式
33.下面结合实施例和附图对本发明做进一步的详细说明,以令本领域技术人员参照说明书文字能够据以实施。
34.应当理解,本文所使用的诸如“具有”、“包含”以及“包括”术语并不排除一个或多个其它元件或其组合的存在或添加。
35.需要说明的是,下述实施方案中所述实验方法,如无特殊说明,均为常规方法,所述试剂和材料,如无特殊说明,均可从商业途径获得。
36.一种面向社交平台的数据采集方法,包括以下步骤:
37.1)在主机上通过模拟用户发出的浏览器访问请求获取社交平台上相关页面的web页面数据,例如通过selenium结合浏览器实现;
38.2)将真机或模拟器连接主机,通过真机或模拟器模拟用户发出的app访问请求,在主机上设置网络代理,例如mitmproxy或anyproxy等,目的是拦截app访问请求获得相应的http/https请求,获取社交平台上相关页面的app页面数据;真机或模拟器均可以用于app端数据的采集,更优的是选择模拟器。
39.3)将web页面数据和app页面数据分别进行页面解析、数据对齐融合,输出并存入数据库。
40.真机或模拟器均支持相同的移动端环境,如安卓环境、ios环境。优选为,真机或模拟器为安卓环境,使用安卓模拟器或安卓真机时,需要安装xposed框架,模拟器可以选择appium、网易mumu模拟器等,当真机连接主机并给与权限时或者安卓模拟器开启开发者模式的时候,可以使用adb命令连接主机与模拟器或真机,也可以使用端口连接,不同模拟器端口不同,如网易mumu模拟器端口7555,故优先选用adb命令连接模拟器或真机。
41.web页面数据采集时,由于新型网站中大量采用异步加载,使用简单收发包很多内容无法解析,所以在采集技术上本发明优选通过selenium模拟浏览器的方式模拟用户请求进行web页面数据采集,这一过程需要通过selenium模拟用户发出的浏览器访问请求,通过参数请求子模块模拟用户对相关页面的请求参数,selenium调用请求参数获取web页面数据。并且,在采集开始利用selenium访问网站后,浏览器不要退出,保持长连接状态,随后使用selenium模拟正常浏览器对用户信息、动态消息、评论、关系的真实操作,在获取相关页面后,针对具体页面结果进行所需字段的解析、提取、清洗等操作,最后获取规范化的输出、存储数据。
42.在另一种技术方案中,所述的面向社交平台的数据采集方法,使用mitmproxy为网络代理。具体方法为:模拟器设置代理ip查看宿主机ip,端口为mitmproxy启动监听端口,真
机模式是使用主机释放热点(360wifi),然后ipconfig查看ipv4地址,端口也是mitmproxy监听端口。现有技术中常用抓包方式获取用户请求接口,接口会存在失效时限,在一定时间之后难以进行采集,而模拟器或真机可以支持在线的用户授权,能够及时顺利通过接口的动态验证,保证长时间的有效采集。
43.在另一种技术方案中,所述的面向社交平台的数据采集方法,web页面数据和app页面数据通过数据解析、字段提取和数据清洗进行页面解析获得相应的标准数据,再以标准数据的相关属性为标识进行数据对齐融合更新。web页面数据为经过模拟浏览器请求返回的已经渲染完成的网页格式,通过获取源码得到html文件,主要采用xpath即可实现对所需字段的提取,再结合相关数据清洗方法,即可得到标准化的输出数据;app页面数据为请求后返回得到的html源码格式,主要使用html、正则、xpath等方式结合的办法获取相关字段数据,再结合相关数据清洗方法,即可得到标准化的输出数据。标准数据进行数据对齐融合时,可以按照标准数据的相关属性为标识进行对齐融合,例如文章id或其他相关属性,每个字段可以采用不同的对齐更新策略,比如对评论数的更新可以按照数值大为准等等,数据对齐方式可以结合社交平台的数据结构选择合适的对齐方式,对齐方式可以根据数据属性直接对齐,也可以采用机器学习方法进行对齐。
44.如图1所示,本发明还提供了一种面向社交平台的数据采集系统,包括:
45.web数据采集模块,其包括:
46.模拟浏览器子模块,用于模拟用户发出的浏览器访问请求,以及获取社交平台上相关页面的web页面数据,例如通过selenium结合浏览器实现;
47.参数请求子模块,与模拟浏览器子模块连接,参数请求子模块通过模拟浏览器子模块模拟用户的浏览器访问请求触发参数请求,模拟用户对相关页面的请求参数,模拟浏览器子模块调用请求参数获取web页面数据;
48.第一页面解析子模块,与模拟浏览器子模块连接,用于对web页面数据进行数据解析、字段提取和数据清洗以获得web标准数据,web页面数据为经过模拟浏览器请求返回的已经渲染完成的网页格式,通过获取源码得到html文件,主要采用
49.xpath即可实现对所需字段的提取,再结合相关数据清洗方法,即可得到标准化的输
50.出数据;
51.app数据采集模块,其包括:
52.环境配置子模块,其与主机连接,环境配置子模块为模拟器或真机,用于模拟用户发出的app访问请求,真机或模拟器可以为安卓环境,也可以为ios环境,真机或模拟器安装有社交平台app,真机或模拟器均可以用于app端数据的采集,更优的是选择模拟器;
53.请求拦截子模块,与环境配置子模块连接,用于主机设置网络代理,例如
54.mitmproxy或anyproxy等,目的是拦截环境配置子模块模拟用户发出的app访问请求获得相应的http/https请求,获取社交平台上相关页面的app页面数据;
55.第二页面解析子模块,与请求拦截子模块连接,用于对app页面数据进行数据解析、字段提取和数据清洗以获得app标准数据,app页面数据为请求后返回得到的html源码格式,主要使用html、正则、xpath等方式结合的办法获取相关字段数据,再结合相关数据清洗方法,即可得到标准化的输出数据;
56.双终端数据对齐融合模块,与第一页面解析子模块、第二页面解析子模块连接,用于将web标准数据与app标准数据对齐融合,输出并存入数据库,web端和app端的平台数据具有各自的倾向,web端展示相对开放的内容,如热点榜单、群组等,而app端侧重于信息交流,两个终端存在网页数据不如移动端数据齐全或移动端数据缺失的情况,双终端采集到的数据经对齐融合后能得到一份完整的社交平台数据。标准数据进行数据对齐融合时,可以按照标准数据的相关属性为标识进行对齐融合,例如文章id或其他相关属性,每个字段可以采用不同的对齐更新策略,比如对评论数的更新可以按照数值大为准等等,数据对齐方式可以结合社交平台的数据结构选择合适的对齐方式,可以根据数据属性直接对齐,也可以采用机器学习方法进行对齐。
57.在另一种技术方案中,所述的面向社交平台的数据采集系统,使用安卓模拟器或安卓真机时,需要安装xposed框架,模拟器可以选择appium、网易mumu模拟器等,当真机连接主机并给与权限时或者安卓模拟器开启开发者模式的时候,可以使用adb命令连接主机与模拟器或真机,也可以使用端口连接,不同模拟器端口不同,如网易mumu模拟器端口7555,故优先选用adb命令连接模拟器或真机。
58.在另一种技术方案中,所述的面向社交平台的数据采集系统,模拟浏览器子模块为selenium。web页面数据采集时,由于新型网站中大量采用异步加载,使用简单收发包很多内容无法解析,所以在采集技术上本发明优选通过selenium模拟浏览器的方式模拟用户请求进行web页面数据采集,selenium模拟用户发出的浏览器访问请求,参数请求子模块通过selenium模拟用户对相关页面的请求参数,selenium调用请求参数获取web页面数据。并且,在采集开始利用selenium访问网站后,浏览器不要退出,保持长连接状态,随后使用selenium模拟正常浏览器对用户信息、动态消息、评论、关系的真实操作,在获取相关页面后,针对具体页面结果进行所需字段的解析、提取、清洗等操作,最后获取规范化的输出、存储数据。
59.在另一种技术方案中,所述的面向社交平台的数据采集系统,使用mitmproxy为网络代理。具体方法为:模拟器设置代理ip查看宿主机ip,端口为mitmproxy启动监听端口,真机模式是使用主机释放热点(360wifi),然后ipconfig查看ipv4地址,端口也是mitmproxy监听端口。现有技术中常用抓包方式获取用户请求接口,接口会存在失效时限,在一定时间之后难以进行采集,而模拟器或真机可以支持在线的用户授权,能够及时顺利通过接口的动态验证,保证长时间的有效采集。
60.本发明以抖音平台为例,采集抖音平台的完整数据。
61.一、抖音web端数据采集
62.在主机上安装selenium和chrome浏览器(浏览器可以用与selenium配套使用的其他浏览器),安装参数请求工具,用户从浏览器输入抖音平台相关的请求参数,利用selenium访问网站,同时保持浏览器为长连接状态,selenium模拟正常浏览器对用户信息、动态消息、评论、关系的真实操作,即模拟用户对相关页面的请求参数,从而获取相关的web页面数据。web页面数据为经过模拟浏览器请求返回的已经渲染完成的网页格式,通过获取源码得到html文件,主要采用xpath即可实现对所需字段的提取,再结合相关数据清洗方法,最后依据数据结构分类获取规范化的标准数据。
63.二、抖音app端数据采集
64.(1)如果使用真机,需要一台装有xposed框架的手机,可直接购买(此处使用的是红米3g 64g),如果自己使用安卓手机进行root,然后刷入xposed框架。
65.如果使用安卓模拟器,可以使用网易mumu模拟器或appium模拟器,刷入xposed框架,网易mumu模拟器的多开是单机多开,夜神模拟器的多开是多机多开。
66.整个流程最后实现是本地windows实体机,类似于远程windows桌面,都可实现。本实例采用安装appium模拟器的方式采集抖音app数据,模拟器安装有抖音app,当模拟器开启开发者模式的时候,可以使用adb命令连接主机与appium模拟器。
67.(2)此处使用mitmproxy作为拦截http/https的代理,真机或模拟器连接网络,并设置代理。模拟器设置代理ip查看宿主机ip,端口为mitmproxy启动监听端口,真机模式是使用宿主机释放热点(360wifi),然后ipconfig查看ipv4地址,端口也是mitm监听端口,默认8080。
68.正式使用相关:
69.①
启动脚本需要使用打开的应用包名,需要查看安卓机进程,获得包名和启动类,然后才能设置参数给到appium启动。
70.②
appium有测试模式,对于一个应用进行多次点击才能获取数据时,可以通过该模式来确定点击的按钮,然后确定采集流程。对于点击操作和数据获取为异步方式。
71.③
目前appium控制流程
72.搜索用户(抖音昵称):主界面》》放大镜搜索》》点击联想词或触发回车》》页面由综合滑动至用户页面》》判断当前页面所有用户,找到目标用户并点击》》获取用户个人信息和用户部分视频列表信息;
73.搜索关键词:主界面》》放大镜搜索》》点击联想词或触发回车》》页面由综合滑动至视频》》获取视频列表信息,点击首个视频位置》》点击评论位置查看评论》》下划获取更多评论》》退出评论页》》上划获得下个视频,重复获取评论信息。
74.(3)抖音app页面数据采集后进行数据解析,对请求后返回得到的html源码格式,使用html、正则、xpath等方式结合的办法获取相关字段数据,按照数据结构分类获得标准数据。
75.针对抖音的数据结构,包括抖音视频结构、抖音评论结构、抖音用户结构。
76.抖音视频结构包括:文档类型标识;信源传媒id,应使用统一分配的id;结构化抽取配置版本:0无效;1自动;大于1:人工配置的版本;获取时间;发布时间;视频id;视频点赞数(不含顶、踩等具体动作);视频评论数;视频转发数;视频对应的url(可通过url获取该视频);视频标题;视频作者名称(抖音名字);视频作者id(抖音号);音乐id;音乐名称;话题id;话题名称;合集id;合集名称;地点id;地点名称;视频采集来源等等。
77.抖音评论结构包括:文档类型标识;信源传媒id,应使用统一分配的id;结构化抽取配置版本:0无效;1自动;大于1:人工配置的版本;获取时间;发布时间;被评论内容;评论内容;被评论用户id(抖音号);评论用户id(抖音号);被评论用户名(抖音名字);评论用户名(抖音名字);被评论内容id;评论的id;点赞数(不含顶、踩等具体动作);回复数;视频id;视频标题名称等等。
78.抖音用户结构包括:文档类型标识;信源传媒id,应使用统一分配的id;结构化抽取配置版本:0无效;1自动;大于1:人工配置的版本;获取时间;创建时间;更新时间;用户信
息页面url;用户封面图片的url;用户出生年月日(yyyy-mm-dd);用户id(抖音号);用户名称(抖音名);用户所在地信息;用户学校名称信息;性别,-1无效;0女;1男;年龄;头像url;用户简介描述信息;头条主页url;官网链接url;商品橱窗url;统一使用整形:0表示普通用户,1表示认证用户;认证信息;获赞数;关注用户数;粉丝数;用户喜欢视频id列表;用户自创的视频数等等。
79.三、双终端数据对齐融合,将web标准数据与app标准数据根据抖音的数据结构进行对齐融合,最后输出并存入数据库,获得全量的抖音数据。
80.尽管本发明的实施方案已公开如上,但其并不仅仅限于说明书和实施方式中所列运用,它完全可以被适用于各种适合本发明的领域,对于熟悉本领域的人员而言,可容易地实现另外的修改,因此在不背离权利要求及等同范围所限定的一般概念下,本发明并不限于特定的细节和这里示出与描述的图例。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献