搜索引擎优化高级编程:php版(网盘搜索引擎盘搜索的技术搜索模式地址是怎样的?)
优采云 发布时间: 2022-01-27 17:01搜索引擎优化高级编程:php版(网盘搜索引擎盘搜索的技术搜索模式地址是怎样的?)
网盘搜索引擎有很多,可以分为两类:
1.搜索引擎索引
2.爬虫库存指数
第一种:搜索引擎索引
这种索引方法是目前的主流方法。它依靠百度和谷歌建立索引链接。用户搜索时,网盘搜索引擎会抓取谷歌和百度拥有的页面收录,然后反馈给用户。
第二种:爬虫存储索引
通过爬虫(python或其他语言)爬取网盘站点的资源,将资源统一存储在数据库中,通过分词将搜索结果展示给用户。
这两种方法各有优缺点。第一个属于间接搜索。如果搜索引擎没有收录网站资源,就无法搜索。第二种是直接搜索,资源准确率更高,但实时更新速度不如第一种。
下面进入话题,聊聊辰鑫盘搜的技术搜索模式
地址:
很早以前就想为蓝生云做一个网盘搜索引擎,但是之前没时间,终于有时间开发了。
蓝玩云的优势:速度不限,速度快。
蓝锁云缺点:非会员上传限制为100M
缺点是资源不会太大,视频内容必须非常少,但其他类型的资源,比如app、音乐、小说等,必须非常丰富。
由于 Blueplay Cloud 的 Robots 将百度的 收录 限制在其网页中,因此使用百度的高级搜索语法没有搜索结果,但 Google 可以搜索到。
没想过用搜索引擎做引擎,只是抱着严谨的态度去搜索看看。
废话太多,下面进入正题。
技术架构:
1.前端使用Vue+Element UI,前端本身并不复杂,所以没有用webpack打包
2.后端采用PHP+Apache+Mysql的经典后端组合
3.分词引擎使用的是中国人开源的xunsearch。当然,中国人最懂中文。
4.爬虫使用基于python的Scrapy分布式爬取资源
整个系统的复杂之处在于分词,因为数据库存储资源后,由于数据量巨大,如果使用数据库查询语句,效率和吞吐量肯定不能满足。这时候分词的重要性就非常重要了。对数据库存储标题的字段进行分段,然后建立全文索引链,大大提高了搜索速度和吞吐量。
虽然mysql目前支持中文全文索引,但是效率和分词的结果都很不理想。找了好几个分词引擎后,最终选择了迅搜索。百万级的搜索速度只有几毫秒。有需要的朋友可以了解一下百度搜搜。接下来,使用不复杂,文档有点乱,还是需要仔细分析几遍。
爬虫还是一样的python。它使用西瓜皮作为爬虫框架。分布式爬虫一共有三台服务器。由于蓝音乐的种种限制,目前的资源存储速度还是比较理想的。这里需要注意的是爬虫和分词并不是实时响应的。每次爬取一段时间后,服务器都会进行分词处理。资源有一定的滞后,这个滞后时间会在后期进行优化。