Python编写简单搜索引擎之爬虫篇代码(计算站内相关文章pagerank值)

仅作为一个项目的学习记录

       爬取电玩巴士部分文章作为后台数据,根据页面内相关文章计算PR值。爬取与计算均较为简单,不考虑复杂度,因此大量数据下运行时间较长有待改进。
       具体是学习Mooc网bobby老师的课程,个人总结和教程之后写。(多么鲜艳的Flag)
        搜索引擎搭建项目指路

没什么必要的目录

技术栈

  • Python3
    • virtualenv、virtualenvwrapper(不必要,但建议使用, 安装教程
  • 爬虫框架scrapy:pip install scrapy
  • 搜索引擎支撑elasticsearch:
    • jdk8+
    • elasticsearch-rtf:大神开发的适用于中文的版本
    • elasticsearch-head:可视化数据
    • kibana:运行不必要,学习ES建议安装
    • python编写接口包elasticsearch_dsl_py:pip install elasticsearch-dsl
  • 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)

欢迎指正与讨论!
  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值