前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >基于ElasticSearch通用小规模搜索引擎

基于ElasticSearch通用小规模搜索引擎

作者头像
润森
发布2022-12-20 20:56:02
3190
发布2022-12-20 20:56:02
举报
文章被收录于专栏:毛利学Python

基于ElasticSearch通用小规模搜索引擎

通用小规模搜索引擎

《信息内容安全》课程设计——搜索引擎

背景

《信息内容安全》网络信息内容获取技术课程项目设计

  • 一个至少能支持10个以上网站的爬虫程序,且支持增量式数据采集;并至少采集10000个实际网页;
  • 针对采集回来的网页内容, 能够实现网页文本的分类;
  • 可进行重复或冗余网页的去重过滤;
  • 对经去冗以后的内容建立倒排索引;
  • 采用PageRank算法实现搜索结果的排序;
  • 支持自然语言的模糊检索;
  • 可实现搜索结果的可视化呈现。
  • 可以在线记录每次检索的日志,井可对日志数据进统计分析和关联挖掘。

运行环境

平台:全平台

jdk 1.8.0

ElasticSearch 7.4.0

Python 3.6 及以上

  • PageRank算法、AI文本分类与上传 > pip install paddlepaddle numpy elasticsearch
  • 数据的爬取与预处理 > pip install requests bs4
  • 安装依赖模块

运行步骤

安装配置ElasticSearch并启动

  • [下载]

https://www.elastic.co/cn/downloads/elasticsearch 并解压Elasticsearch,详细步骤自行搜索

  • 可以从 apt 和 yum 的软件仓库安装,也可以使用 Windows MSI 安装包安装
  • [安装]

https://github.com/medcl/elasticsearch-analysis-ik/releases IK 中文分词器,详细步骤自行搜索

创建索引

代码语言:javascript
复制
PUT http://127.0.0.1/page
{
    "settings": {
        "number_of_shards": "5",
        "number_of_replicas": "0"
    },
    "mappings": {
        "properties": {
            "title": {
                "type": "text",
                "analyzer": "ik_max_word"
            },
            "weight": {
                "type": "double"
            },
            "content" : {
                "type" : "text",
                "analyzer": "ik_max_word"
            },
            "content_type": {
                "type": "text"
            },
            "url": {
                "type": "text",
                "analyzer": "ik_max_word"
            },
            "update_date": {
                "type": "date",
                "format": "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis"
            }
        }
    }
}

启动 ElasticSearch ,在 bash 中执行 bin/elasticsearch 或者在 Windows 的 cmd、powershell 执行 bin\elasticsearch.bat

启动Web服务

代码语言:javascript
复制
> cd WebApp
> java -jar *.jar

数据的爬取与预处理

代码语言:javascript
复制
> cd DataCrawler
> python crawler.py

计算PageRank值

代码语言:javascript
复制
> cd DataProcess
> python PageRank.py

利用AI进行文本分类并上传至ES

代码语言:javascript
复制
> cd DataProcess/Text_Classification
> python Classify.py

Enjoy

访问http://127.0.0.1:80

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-09-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 小刘IT教程 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 基于ElasticSearch通用小规模搜索引擎
  • 通用小规模搜索引擎
    • 背景
      • 运行环境
        • 运行步骤
          • 安装配置ElasticSearch并启动
          • 启动Web服务
          • 数据的爬取与预处理
          • 计算PageRank值
          • 利用AI进行文本分类并上传至ES
          • Enjoy
      相关产品与服务
      Elasticsearch Service
      腾讯云 Elasticsearch Service(ES)是云端全托管海量数据检索分析服务,拥有高性能自研内核,集成X-Pack。ES 支持通过自治索引、存算分离、集群巡检等特性轻松管理集群,也支持免运维、自动弹性、按需使用的 Serverless 模式。使用 ES 您可以高效构建信息检索、日志分析、运维监控等服务,它独特的向量检索还可助您构建基于语义、图像的AI深度应用。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档