爬取电玩巴士部分文章作为后台数据,根据页面内相关文章计算PR值。爬取与计算均较为简单,不考虑复杂度,因此大量数据下运行时间较长有待改进。
具体是学习Mooc网bobby老师的课程,个人总结和教程之后写。(多么鲜艳的Flag)
搜索引擎搭建项目指路
技术栈
- Python3
- virtualenv、virtualenvwrapper(不必要,但建议使用, 安装教程 )
- 爬虫框架scrapy:
pip install scrapy
- 搜索引擎支撑elasticsearch:
- pagerank矩阵计算numpy:
pip install numpy
- redis:记录爬取总数(不重要、可直接注释相关代码)
运行
- 项目地址
- 运行 esType.py 在ES中创建数据映射
因为在虚拟机写的python物理机运行ES所以改了各种连接配置
解决:替换所有的192.168.1.106为localhost - 运行 main.py 开始爬虫(默认设置爬取500页、需半小时左右、可在tgbus.py内修改)
- 运行 pagerank.py 开始计算pr值
程序运行较慢(主要应该是在写入和查询es的地方,还有在筛选相关内容的算法上)。
P.S.如果网站有浏览量、点赞数、收藏数之类的数据可以作为添加网页权重值的依据改进为其他算法(比如HITS、TrustRank)