第三百七十一节,Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)用Django实现个人搜索以及热门git
个人搜素简单实现原理
咱们能够用js来实现,首先用js获取到输入的搜索词
设置一个数组里存放搜素词,
判断搜索词在数组里是否存在若是存在删除原来的词,从新将新词放在数组最前面
若是不存在直接将新词放在数组最前面便可,而后循环数组显示结果便可github
热门搜索
实现原理,当用户搜索一个词时,能够保存到数据库,而后记录搜索次数,
利用redis缓存搜索次数最到的词,过一段时间更新一下缓存web
备注:Django结合Scrapy的开源项目能够学习一下
django-dynamic-scraper
https://github.com/holgerd77/...redis
补充数据库
默认的elasticsearch(搜索引擎)只能搜索1万条数据,在大就会报错了**django
设置方法数组
步骤一:缓存
打开项目的索引库地址,将该索引先关闭,不然设置操步骤二没法提交elasticsearch
步骤二:分布式
打开复合查询,填入以下信息,记得选择PUT方式提交,credit_trace_data改成本索引库中的索引,max_result_window设为20亿,此值是integer类型,不能无限大
http://127.0.0.1:9200/ PUT
credit_trace_data/_settings?preserve_existing=true
{
"max_result_window" : "2000000000"
}
最后点击提交申请,若是配置正确右侧窗口会显示以下信息
若是要查询max_result_window时只须要将PUT改成get便可
最后记得开启索引!