owllook在线小说搜索引擎使用指南

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 Tair(兼容Redis),内存型 2GB
云数据库 MongoDB,独享型 2核8GB
推荐场景:
构建全方位客户视图
简介: owllook是一个在线小说搜索引擎,其目的是让阅读更简单、优雅,让每位读者都有舒适的阅读体验

image.gif

owllook是我大学时期编写的一个Python开源项目,至今维护将近两年了,以前关于owllook介绍的原文章已经年久失修,再加上一些github用户不知道怎么安装使用,因此我将文章重新编辑一番,以作使用指南


介绍


owllook是一个基于其他搜索引擎构建的垂直小说搜索引擎,提供搜书、阅读、收藏、追更、推荐等功能


owllook不保存数据,所有信息全部利用爬虫技术基于第三方网站搜索发现,再经过在线解析展示给用户,这样对使用者的好处在于:


  • 多网站聚合,可选择性高

  • 优质网站来源提供,可靠性强

  • 页面解析会经过过滤,安全性高

  • 自动去广告,可读性强

  • 定时更新,自动追更

  • 发现同类书友

  • ……

owlllook基于python3.6,后端采用Sanic(对这个web框架感兴趣的朋友可在公众号后台回复sanic,看看我写的Sanic教程),前端使用了 bootstrapmdui,数据库方面则用了 MongoDB储存用户使用过程中的产生的基本信息,诸如注册信息、搜索小说信息、收藏小说数据等,对于某些必要的缓存,则利用 Redis进行缓存处理,如小说缓存、session缓存,注意,对于限制数据:都将在24小时删除


对于不同网站的小说,页面规则都不尽相同,我希望能够在代码解析后再统一展示出来,这样方便且美观,而不是仅仅跳转到对应网站就完事,清新简洁的阅读体验才是最重要的


目前采用的是直接在搜索引擎上进行结果检索,我尽量写少量的规则来完成解析,具体见项目里面的规则定义,遇到自己喜欢的小说网站,你也可以自己添加解析,owllook目前解析了超过 200+网站,追更网站解析了 50+


安装


接下来的安装步骤,默认以 Centos7为主,默认在 root用户下操作,首先Python版本,最好是 Python3.6,然后项目的数据库需要 MongoDBRedis


请先安装:

yum -y install bzip2 wget vim git

环境搭建


owllook的安装很简单,但是对于一些Python不熟悉或者新手来说确实有点困难,下面详细介绍了安装流程


数据库


owllook需要你在服务器上安装 MongoDBRedis,你不必管理数据库的创建,用这个的好处就在于可以自动生成


安装MongoDB

vim /etc/yum.repos.d/mongodb-org-3.6.repo

输入:

[mongodb-org-3.6]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/amazon/2013.03/mongodb-org/3.6/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.6.asc

可以看到 repolist已经存在:

2.jpg

# 安装
sudo yum install mongodb-org
# 启动
sudo systemctl start mongod
# 查看 MongoDB 后台进程
ps -aux |grep mongod
# 或者
sudo systemctl status mongod

可以看到MongoDB正在后台运行:

3.jpg

进入 MongoDB:

4.jpg

安装Redis

yum install epel-release yum-utils
yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
yum-config-manager --enable remi
yum install redis
vim /etc/redis.conf
# 使 redis 能在后台运行
daemonize yes

启动 redis 服务

# 启动
systemctl restart redis
# 查看状态
systemctl status redis
# 查看端口
ss -an | grep 6379

6.jpg启动 redis 客户端

redis-cli
# ctrl + d 退出客户端

下载代码


请先安装git然后克隆代码

cd ~
# 下载代码
git clone https://github.com/howie6879/owllook

搭建Python3.6环境:

# 下载anaconda管理 Python 环境
wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-5.3.0-Linux-x86_64.sh
# 安装
chmod -R a+x Anaconda3-5.3.0-Linux-x86_64.sh 
./Anaconda3-5.3.0-Linux-x86_64.sh
# 刷新终端
# 创建 Python3.6 环境
conda create -n python36 python=3.6

配置项目:

cd ~/owllook
# 安装 pipenv
pip install pipenv
# --python 后面的路径是上面conda创建的路径地址
pipenv install --python  ~/anaconda3/envs/python36/bin/python3.6
# 如果出错 继续往下执行
pipenv run pip install pip==18.0
pipenv install

如下表示安装成功:

7.jpg

运行owllook:

cd owllook
python run.py

成功如下图:

8.jpg

项目截图


首页

9.jpg

搜索

10.jpg

榜单

11.jpg

书架

12.jpg

解析

13.jpg

阅读页

14.jpg

相关文章
|
6月前
|
数据采集 JSON JavaScript
Python爬虫案例:抓取猫眼电影排行榜
python爬取猫眼电影排行榜数据分析,实战。(正则表达式,xpath,beautifulsoup)【2月更文挑战第11天】
255 2
Python爬虫案例:抓取猫眼电影排行榜
|
2月前
|
搜索推荐 安全
谷歌搜索引擎课程笔记
谷歌搜索引擎课程笔记
|
5月前
|
Web App开发 Python Windows
经验大分享:PYTHON爬取66影视的电影下载链接,有搜索功能
经验大分享:PYTHON爬取66影视的电影下载链接,有搜索功能
109 2
|
6月前
|
数据采集 存储 数据挖掘
Python爬虫实战:打造一个简单的新闻网站数据爬取工具
本文将介绍如何运用Python编写一个简单而高效的网络爬虫,帮助您在实际项目中快速获取并存储新闻网站的数据。通过学习本文,您将了解到如何利用Python中的第三方库和技术来实现数据爬取,为您的数据分析和应用提供更多可能性。
|
6月前
|
监控 搜索推荐 数据挖掘
淘宝关键词设置:技巧与实战指南
淘宝关键词设置:技巧与实战指南
|
自然语言处理 API 数据安全/隐私保护
开源免费的知识库文档管理系统(合集+排名)
开源免费的知识库文档管理系统(合集+排名)
5456 0
|
数据采集 Python
Python爬虫系列17-批量抓取某短视频平台某用户的全部作品
不那么好走的路,才是上坡路. 所有往上的路,都与我们本能的懒惰、懈怠和拖延不相容。 当你觉得很苦很累时,不要泄气,因为你可能走在上坡的路上。
Python爬虫系列17-批量抓取某短视频平台某用户的全部作品
|
SQL 前端开发 JavaScript
在线小说网站的设计与实现(附源码)
最近在做一个课程设计,在线小说网站的设计,以下是课题要求,需要项目练手的童鞋可以试试身手。 由于最近新学了JavaEE,所以采用了jsp+servlet来写,前端部分用了少量的js和jQuery处理,数据库用了MySQL,开发平台是myeclipse。 发布文章时直接插入数据库会没有分段,这里的解决办法是引入第三方工具wangEditor(wangEditor 是一款基于javascr
2979 1
|
数据采集 数据库 Python
基于Scrapy爬取伯乐在线网站(进阶版)
标题中的英文首字母大写比较规范,但在python实际使用中均为小写。 爬取伯乐在线网站所有文章的详情页面 1.网页持久化 1.1 新建爬虫工程 新建爬虫工程命令:scrapy startproject BoleSave2 image.png 进入爬虫工程目录命令:cd BoleSave2 新建爬虫文件命令:scrapy genspider save blog.jobbole.com 1.2 编辑save.py文件 网页持久化只需要编辑爬虫文件就可以,下面是save.py文件的代码。
1050 0
|
数据采集 关系型数据库 数据库
基于Scrapy爬取伯乐在线网站
标题中的英文首字母大写比较规范,但在python实际使用中均为小写。 2018年7月20日笔记 Scrapy官方文档网址:https://doc.scrapy.
1163 0