一种突发公共卫生事件互联网文本抽取方法_3

文档序号:9818315阅读:来源:国知局
]g.获取 Cookie
[0094]h.在对服务器发起请求时附带Cookie,进行模拟登录。
[0095]但是目前存在的问题来源于,对于用户名和密码加密这一部分需要人工手动分析加密方式:先创建一个rsa公钥,公钥的两个参数为新浪微博提供的固定值,采用的是16进制字符串,使用时这两个值需要先从16进制转换成10进制。然后再servertime加上nonce加上用户密码进行RSA加密。然而js加密文件存由新浪微博提供,为保障认证安全性,经常更换,过期则需要人工再次解析。无疑这样的步骤是非常复杂的。
[0096]但是我们发现,整个步骤过程最终目的是获取登录成功认证的Cookie值,通过附带正确Cookie值的请求即可获得所需页面数据。在对新浪微博的页面访问的传值监听过程中,我们发现Google Chrome自带的浏览器工具可以直接简单地获得Cookie值。该Cookie值的有效期限为一天。因此,直接在程序中填入Cookie值即可。
[0097](2)账号封停
[0098]账号封停指的是当一个账号对于微博内容访问过于频繁,超过了服务器设定的正常人类浏览微博访问频率的“阈值”,那么将会进行账号的封停,即这个账号无法访问微博内容。需要人工输入验证码或完成其他类似的验证步骤才能终止封停状态。
[0099]对于这种问题的解决方案,我们想到的是利用多个账号轮流访问。服务器对于账号访问频率的计算是依赖携带该账号绑定的Cookie值的POST请求次数来决定的。当使用多个账号Cookie值进行轮流访问,即可大大减少单个Cookie请求频率。例如,对一串URL进行访问,访问频率设为I秒/个,当使用五个账号依次访问,那么单个账号的访问频次即为5秒/个。可大大降低被封停可能性。
[0100]因此,参见图4,对于博客页面的文本抽取过程进行如下设计:
[0101]步骤1:开始抓取,在程序中输入微博内容的控制筛选信息。例如关键词、排序方式、时间段、关键词位置等。
[0102]步骤2:根据筛选信息的值,按照微博的URL生成规则,生成对应URL。
[0103]步骤3:模拟登录
[0104]步骤4:访问步骤2按照规则生成的搜索结果界面URL,并对搜索结果页面进行抽取,获得微博搜索页面的源代码。
[0105]步骤5:对HTML文本进行预处理。包括去除HTML标记和文本编码转换。
[0106]步骤6:获取对应属性值并存入微博抽取结果数据库。包括定位并提取微博信息文本、定位并提取网络属性文本、整理文本属性信息并对应存储于数据库中。
[0107]步骤7:对步骤I?6中的运行参数进行记录。参数包括:程序运行时间、休眠等待时间、抓取微博条数等。
[0108]通过上面的分析可以看出,对于不同的社会媒体在处理时需要按照其特点按照不同的方式进行文本抓取。因此,在本发明中,对筛选后的社会媒体在文本抽取前要进行分类,列举了滚动新闻页面、博客页面、微博页面三类社会媒体的特点,并给出了对于各类社会媒体的经过优化了的文本抓取方式。这里对社会媒体的分类仅仅是一种举例说明,本领域技术人员也可以对选择其他社会媒体类型进行优化设计。
[0109]需要声明的是,上述
【发明内容】
及【具体实施方式】意在证明本发明所提供的技术方案的实际应用,不应理解为对本发明保护范围的限定。本领域的技术人员在本发明的精神和原理内,所作的任何修改或等同替换都应包含在本发明的保护范围内,本发明的保护范围以所附权利要求书为准。
【主权项】
1.一种突发公共卫生事件互联网文本抽取方法,其特征在于包括: 步骤I,筛选作为对突发公共卫生事件信息进行挖掘的社会媒体; 步骤2,对筛选后的社会媒体进行分类; 步骤3,对于不同类别的社会媒体按照不同的方式进行文本抓取; 步骤4,将抓取的结果存入数据库。2.根据权利要求1所述的突发公共卫生事件互联网文本抽取方法,其中步骤I中的筛选标准是用户基数大、信息更新及时准确、信息完整透明。3.根据权利要求2所述的突发公共卫生事件互联网文本抽取方法,其中对于用户基数大这一标准,通过获取社会媒体的访问量、用户流量、用户活跃度参数中的一个或多个进行筛选。4.根据权利要求2所述的突发公共卫生事件互联网文本抽取方法,其中对于信息更新及时准确这一标准,通过获取社会媒体的更新频度、更新时间、用户等级参数中的一个或多个进行筛选。5.根据权利要求2所述的突发公共卫生事件互联网文本抽取方法,其中对于信息完整透明这一标准,通过排除列表的方式排除一些政府官方网站和可能干扰疫情分析或舆情分析的网站来进行筛选。6.根据权利要求1所述的突发公共卫生事件互联网文本抽取方法,其中步骤2中的分类中至少包括滚动新闻页面、博客页面、微博页面中的一种。7.根据权利要求6所述的突发公共卫生事件互联网文本抽取方法,其中对于滚动新闻页面的文本抽取步骤具体包括: 步骤al:开始抓取,并从事先设定好的人工采集的滚动页面url地址池中获取需要抓取的对应URL; 步骤a2:解析URL对应的网页HTML语言,并分条目获取对应的新闻标题和新闻页面URL地址,生成一个URL地址列表; 步骤a3:将URL地址列表存放于URL地址池中,并作去重操作; 步骤a4:获取步骤a3中经过去重后新增的URL地址所指向的新闻页面的HTML文本; 步骤a5:对HTML文本进行预处理,包括去除HTML标记和文本编码转换; 步骤a6:获取对应属性值并存入新闻抽取结果数据库,包括定位并提取新闻信息文本、定位并提取网络属性文本、整理文本属性信息并对应存储于数据库中; 步骤a7:对步骤al?a6中的运行参数进行记录,参数包括:程序运行时间、休眠等待时间、抓取新闻条数中的至少一个。8.根据权利要求6所述的突发公共卫生事件互联网文本抽取方法,其中对于博客页面的文本抽取步骤具体包括: 步骤bI:开始抓取,在程序中输入博客内容的控制筛选信息。例如关键词、排序方式、时间段、关键词位置; 步骤b2:生成搜索结果页面的URL,这里的结果搜索页面并不是由程序本身产生,而是利用了新浪博客搜索引擎内部的URL参数传递机制规则产生; 步骤b3:访问步骤b2按照规则生成的搜索结果界面URL,并对搜索结果页面进行抽取,获取页面列表中各个博客对应页面URL; 步骤b4:根据博客页面URL抽取博客页面HTML文本; 步骤b5:对HTML文本进行预处理,包括去除HTML标记和文本编码转换。 步骤b6:获取对应属性值并存入博客抽取结果数据库,包括定位并提取新闻信息文本、定位并提取网络属性文本、整理文本属性信息并对应存储于数据库中; 步骤b7:对步骤bl?b6中的运行参数进行记录,参数包括:程序运行时间、休眠等待时间、抓取博客条数中的至少一个。9.根据权利要求6所述的突发公共卫生事件互联网文本抽取方法,其中对于微博页面的文本抽取步骤具体包括: 步骤Cl:开始抓取,在程序中输入微博内容的控制筛选信息,包括关键词、排序方式、时间段、关键词位置中的至少一个; 步骤c2:根据筛选信息的值,按照微博的URL生成规则,生成对应URL; 步骤c3:模拟登录; 步骤c4:访问步骤c2按照规则生成的搜索结果界面URL,并对搜索结果页面进行抽取,获得微博搜索页面的源代码; 步骤c5:对HTML文本进行预处理。包括去除HTML标记和文本编码转换; 步骤c6:获取对应属性值并存入微博抽取结果数据库,包括定位并提取微博信息文本、定位并提取网络属性文本、整理文本属性信息并对应存储于数据库中; 步骤c7:对步骤Cl?c6中的运行参数进行记录,参数包括:程序运行时间、休眠等待时间、抓取微博条数中的一个或多个。10.根据权利要求9所述的突发公共卫生事件互联网文本抽取方法,其中,在模拟登录步骤c3中使用Google Chrome自带的浏览器工具获得Cookie值,通过附带该Cookie值的请求获得所需页面数据,在模拟登录时使用多个账号Cookie值进行轮流访问。
【专利摘要】本发明公开了一种突发公共卫生事件互联网文本抽取方法,包括筛选作为对突发公共卫生事件信息进行挖掘的社会媒体,对筛选后的社会媒体进行分类,对于不同类别的社会媒体按照不同的方式进行文本抓取,以及将抓取的结果存入数据库。本方法充分考虑了不同社会媒体的不同特点,根据这些不同特点制定不同的信息抓取策略,从而实现了提高信息抓取速度、增进抓取信息的准确度,因此能够在第一时间收集突发公共卫生事件的舆情,对突发公共卫生事件的做出预警,此外还可供公共管理部门监测舆情使用。
【IPC分类】G06F17/30
【公开号】CN105589953
【申请号】CN201510964759
【发明人】王理, 邵劲松, 蓝俊, 施维, 薛均, 张远鹏, 董建成, 姚敏, 姚登福
【申请人】南通大学
【公开日】2016年5月18日
【申请日】2015年12月21日
当前第3页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1