社交网络的数据采集策略研究与应用
发布时间:2021-06-26 14:12
由于互联网的兴起和通信技术的发展,人们使用在线社交网络进行社会活动已成为日常生活的一部分。在线社交网络已经渗透到人们生活的方方面面,是时下最重要的移动互联网应用。许多组织对在线社交网络感兴趣,社会学家会收集相关数据用以研究在线用户行为。市场调查员根据在线社交网络挖掘信息,用以指定市场推荐。社交网络的提供商通过了解社交图和用户行为,优化数据存储设计和云服务或提供个性化服务的方式来改善用户体验。社交网络如此庞大的数据量给研究带来了许多困难。首先,企业基于商业机密以及用户隐私的考虑,并不愿意分享他们的商业数据,即使数据是以匿名的形式。其次,从大规模在线社交网络中获取所有数据也不现实,因为要获取数以亿计的用户是极其耗时的。于此同时,即使利用高性能计算机集群处理如此庞大的数据也非常困难。最后,在线社交网络上用户数量增加迅速,用户间的关系也会频繁的发生改变。因此对社交网络设计有效的采样算法非常重要。广度优先搜索算法(BFS)是常用的图遍历方法,但是BFS会过度的采集高度节点同时这种偏移很难被纠正。随机游走(RW)是一种经典的网络节点游走方法,但同样偏向于采集高度的节点且采样效率低。Metropol...
【文章来源】:浙江理工大学浙江省
【文章页数】:51 页
【学位级别】:硕士
【部分图文】:
缓存区中的存储结构
获取当前节点的父节点获取当前节点的所有子节点获取当前节点的所有后代节点ing 获取当前节点的所有同辈节点ath抽取网页信息时,首先在网页相关 HTML 文件中找到相应的信息户主页中关注数,粉丝数,微博数的代码片段。然后针对某个具体的Xpath路径,如图4.2中的关注数,其 XML路径为”/html/body/div[4字路径后利用正则表达式提取要点信息,相应的 Xpath代码如下:ector(response)r.xpath('body/div[@class="u"]/div[@class="tip2"]').extract_first() re.findall(u'\u5fae\u535a\[(\d+)\]', text0) # 微博数= re.findall(u'\u5173\u6ce8\[(\d+)\]', text0) # 关注数e.findall(u'\u7c89\u4e1d\[(\d+)\]', text0) # 粉丝数
图 4.3 在用户页面中抓取有用信息4.2.2 用户认证与反爬由于爬虫系统会在社交网络服务器中增加大量的无效访问量,进而增加了网络服务器的运行负荷,目前大部分的社交网络提供商会对用户登录进行验证,如验证码输入,图片校对等,或限制 IP 地址的最大访问次数等措施,提高进入网络服务器的门槛来限制爬虫系统的访问。对于小型的网络爬虫机而言可以使用伪装 cookies 登录的方法[56],绕开繁琐的登录验证过程,但这种方式不能进行大规模数据收集,因为,cookies 的有效时间一般在一个星期左右,届时还需要手动添加新的 cookies 文件以确保爬虫系统的持续运行。我们所设计的爬虫机采样用户名密码与手动解锁的方式自动使爬虫机获取实时的 cookies。获取用户认证的步骤如下:第一步:获取登录页面,在登录页面的 HTML 的插入用户名与密码;
本文编号:3251494
【文章来源】:浙江理工大学浙江省
【文章页数】:51 页
【学位级别】:硕士
【部分图文】:
缓存区中的存储结构
获取当前节点的父节点获取当前节点的所有子节点获取当前节点的所有后代节点ing 获取当前节点的所有同辈节点ath抽取网页信息时,首先在网页相关 HTML 文件中找到相应的信息户主页中关注数,粉丝数,微博数的代码片段。然后针对某个具体的Xpath路径,如图4.2中的关注数,其 XML路径为”/html/body/div[4字路径后利用正则表达式提取要点信息,相应的 Xpath代码如下:ector(response)r.xpath('body/div[@class="u"]/div[@class="tip2"]').extract_first() re.findall(u'\u5fae\u535a\[(\d+)\]', text0) # 微博数= re.findall(u'\u5173\u6ce8\[(\d+)\]', text0) # 关注数e.findall(u'\u7c89\u4e1d\[(\d+)\]', text0) # 粉丝数
图 4.3 在用户页面中抓取有用信息4.2.2 用户认证与反爬由于爬虫系统会在社交网络服务器中增加大量的无效访问量,进而增加了网络服务器的运行负荷,目前大部分的社交网络提供商会对用户登录进行验证,如验证码输入,图片校对等,或限制 IP 地址的最大访问次数等措施,提高进入网络服务器的门槛来限制爬虫系统的访问。对于小型的网络爬虫机而言可以使用伪装 cookies 登录的方法[56],绕开繁琐的登录验证过程,但这种方式不能进行大规模数据收集,因为,cookies 的有效时间一般在一个星期左右,届时还需要手动添加新的 cookies 文件以确保爬虫系统的持续运行。我们所设计的爬虫机采样用户名密码与手动解锁的方式自动使爬虫机获取实时的 cookies。获取用户认证的步骤如下:第一步:获取登录页面,在登录页面的 HTML 的插入用户名与密码;
本文编号:3251494
本文链接:https://www.wllwen.com/guanlilunwen/ydhl/3251494.html