作业第三步----Top10的最重要页面(续)
来源:互联网 发布:matlab方波bp算法 编辑:程序博客网 时间:2024/05/22 14:28
由于此前在Heritrix中自定义的Extractor保存了如下几个文件:
1.入度;格式为url+“/n”+入度数
例如:http://hmwu.ccer.edu.cn/
1
2.出度,格式同上
3.url及其链出的url
例如:http://www.ccer.pku.edu.cn/cn/Images/arrow.gif
+(表示开始)
javascript:history.back(1)
http://go.microsoft.com/fwlink/?linkid=8180
@(表示结束)
因此当改变思路需要使用稀疏矩阵保存和计算结果是就需要对以上几个文件进行预处理。我们的思路是:首先,隔行读取2中的文件,建立一个Map,key为url,value为一个顺序的正数(以此将url与数字形成一对一映射方便后续的处理)。
然后,根据文件3的格式对应上一部中取得的Map建立连接关系,并按照稀疏矩阵的格式保存在文件中。
接着,扫描该文件,利用vector保存每组数值,然后循环处理每一行(其实为上一步中所存矩阵的列),根据pageRank算法,如果无出度则该行为1/N,否则扫描vector看看该位置是否存在连接关系,存在则置为1/count(N),否则置为0。依次进行迭代,最终算出每个URL对应的权值,具体结果如下图
然而在排列这组值的时候,我们发现有一组页面的位置非常靠前,大概在13位之后一直是该文件夹下的页面,集中于http://www.ccer.pku.edu.cn/stat/之下,分别为
FAddress.asp,Default.asp,FIptwo.asp等网页,我们分析之后,觉得问题可能还是出现在抓取的过程中,为了加快速度,而减少了页面响应的时间,因此有些页面由于响应时间略长而被丢弃,最终影响了结果。对于这个问题我们会找机会重新进行抓取已验证这个想法的真实性。
- 作业第三步----Top10的最重要页面(续)
- 作业第三步----Top10的最重要页面(续)
- 作业第三步----Top10的最重要页面
- 作业第三步,统计URL的出度和入读
- 第三步:Activity的生命周期
- 第三步:AndroidStudio的优化
- 作业(第三周)
- 推動 gstreamer plugin 的第三步
- 陪伴我的Android入门第三步
- 金融危机只是世界统一的第三步
- 推动 gstreamer plugin 的第三步
- REST技术第三步 @BeanParam的使用
- 第三章的作业--3.22
- vs2010+wdk7600+XXX环境配置,随后2步最重要,其他和网上搜的大同小异
- 我的C++第三周作业(第二章)
- 第三课--之一(对象)实现MyString类的作业
- 第三周作业(一)
- 第三周作业(二)
- zoj 1201 Inversion
- 30岁前不要去在乎的29件事
- 开发者:关于Admob的个人经验总结
- 马化腾徐少春等中国富豪获住房补贴 政策真空网民质疑
- The Most Important Algorithms
- 作业第三步----Top10的最重要页面(续)
- 设计模式——享元FlyWeight
- mysql安装
- 让Chrome成为你的pdf阅读器
- 在MBP上自由切换显卡
- 《Windows图形编程》中的一个例程所引发的收获和思考
- 作业第三步----Top10的最重要页面(续)
- “几键式”打开或关闭Mac OS的Internet 共享
- 最美丽的编程语言Scheme——基本表达式