2018.2最新-Scrapy+elasticSearch+Django打造搜索引擎(二)
请问您今天要来个引擎吗? 工欲善其事必先利其器
最终项目上线演示地址: http://search.mtianyan.cn
- 第二节:我们搞搞比利,搞搞环境的搭建。
Github地址: https://github.com/mtianyan/ArticleSpider
- IDE: pycharm
- 数据库: mysql, redis, elasticsearch
- 开发环境 virtualenv
这次的数据库只介绍mysql,后面两个会放到要用到的章节。
Pycharm的安装和使用
Pycharm在windows和linux下的安装:
- Pycharm的安装(linux 和windows)
一定要下载专业版,社区免费版有很多功能缺失
windows下pycharm安装。
PyCharm 2017.3.2
pycharm官方下载链接:https://www.jetbrains.com/pycharm/download/#section=windows
我们要选择专业版(Professional)因为只有专业版才能够新建django项目,免费社区版不能。
为Pycharm添加解释器:
setting
- Project Interpreter
:
一直定位到 python.exe
点击确认。
设置keymap: 设置快捷键。
Linux下pycharm使用。
同样下载专业版。 Linux下的版本实际是一个绿色版本。
1 |
cd pycharm |
设置通过命令直接启动。
1 |
vim ~/.bashrc alias pycharm="bash /home//pycharm.sh" source ~./bashrc |
mysql和Navicat的安装和使用
Mysql
百度”mysql for windows” 直接在百度软件中心下载即可
如果你的电脑跟我电脑一样空,推荐遵循我的:
- 点击接受协议
- 选择Custom选项。(如果默认选项,会发生必要条件缺失:如我电脑没有VS和py3.4)
- 下图页面点击
next
会显示我们不满足的条件,back
后点击绿色箭头移除。
- 所有条件都达成,点击
Execute
,等待安装完成。
均为绿色代表安装完成。
- 一直默认选择直到下图页面。设置密码,添加用户(可选)
注意:记住自己设置的mysql密码
之后全部默认下一步。直到安装完成
Finish
这时Navicat已经可以正常连接了。如果想让mysql
命令在cmd下可使用。
C:Program FilesMySQLMySQL Server 5.7bin
(自行替换为自己的mysql.exe地址)加入环境变量中。
通过mysql -uroot -p
命令可以进行登入mysql控制台。
1 |
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf |
修改bind adress: 0.0.0.0
1 |
sudo service mysql restart |
1 |
# 授予所有权限其实可以细化,on`*.*`是一个正则表达式,表示所有的表赋权限。`root `代表通过root用户连接过来。 `%` 代表所有外部的ip :当然也可以指明某一个ip.所有ip上只要是通过root 用户 Identity by`密码 `都可以访问我的所有表 |
L 大专栏 2018.2最新-Scrapy+elasticSearch+Django打造搜索引擎(二)inux 安装 mysql
1 |
sudo apt-get install mysql-server |
通过set py3获取py3安装路径。
Navicat
安装指南:下一步下一步。
下载地址:http://www.navicat.com.cn/download/navicat-for-mysql
我的安装目录: C:softwareNavicat Premium 12
virtualenv和virtualenvwrapper安装和配置
virtualenv介绍
每个应用可能需要各自拥有一套
独立
的Python运行环境。virtualenv就是用来为一个应用创建一套隔离
的Python运行环境。
virtualenv优点:
它是将全局Python解释器进行私有化复制。
如果不使用虚拟环境,默认的pip
安装都会安装到同一个目录(java是把自己需要的包放到自己项目目录),不同项目使用起来会产生问题
安装virtualenv
进入cmd,(确保自己的pip已经可用)
1 |
pip install virtualenv |
默认使用virtualenv testvir
该命令,会将虚拟环境创建在我们当前用户目录。
注意:我的目录在桌面是我的cmder设置的、还请自行cd %homepath%
前往自己的目录
这样直接使用步骤有写过于繁琐。所以我们使用virtualenvwrapper
virtualenvwrapper安装
1 |
pip install virtualenvwrapper-win |
- 创建虚拟环境
1 |
mkvirtualenv DjangoTest |
会创建在C:UsersmtianEnvs
当前用户目录下的Envs目录。
修改mkvirtualenv
创建的目录:新增环境变量WORKON_HOME
退出激活状态
1
deactivate
知道有哪些虚拟环境
1
workon
Linux下安装:
1 |
sudo apt-get install python-virtualenv virtualenv venv --python=python3.5 |
1 |
mkvirtualenv articlespider --python=python3.5 rm -rf py3scrapy : 删除目录 |
2018.2最新-Scrapy+elasticSearch+Django打造搜索引擎(二)的更多相关文章
- Scrapy分布式爬虫打造搜索引擎- (二)伯乐在线爬取所有文章
二.伯乐在线爬取所有文章 1. 初始化文件目录 基础环境 python 3.6.5 JetBrains PyCharm 2018.1 mysql+navicat 为了便于日后的部署:我们开发使用了虚拟 ...
- ELK(elasticsearch+kibana+logstash)搜索引擎(二): elasticsearch基础教程
1.elasticsearch的结构 首先elasticsearch目前的结构为 /index/type/id id对应的就是存储的文档ID,elasticsearch一般将数据以JSON格式存储. ...
- 第三百七十一节,Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)用Django实现我的搜索以及热门搜索
第三百七十一节,Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)用Django实现我的搜索以及热门 我的搜素简单实现原理我们可以用js来实现,首先用js获取到 ...
- 第三百七十节,Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)用Django实现搜索结果分页
第三百七十节,Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)用Django实现搜索结果分页 逻辑处理函数 计算搜索耗时 在开始搜索前:start_time ...
- 第三百六十九节,Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)用Django实现搜索功能
第三百六十九节,Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)用Django实现搜索功能 Django实现搜索功能 1.在Django配置搜索结果页的路由映 ...
- 第三百六十八节,Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)用Django实现搜索的自动补全功能
第三百六十八节,Python分布式爬虫打造搜索引擎Scrapy精讲—用Django实现搜索的自动补全功能 elasticsearch(搜索引擎)提供了自动补全接口 官方说明:https://www.e ...
- 五十 Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)用Django实现我的搜索以及热门搜索
第三百七十一节,Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)用Django实现我的搜索以及热门 我的搜素简单实现原理我们可以用js来实现,首先用js获取到 ...
- Python分布式爬虫打造搜索引擎完整版-基于Scrapy、Redis、elasticsearch和django打造一个完整的搜索引擎网站
Python分布式爬虫打造搜索引擎 基于Scrapy.Redis.elasticsearch和django打造一个完整的搜索引擎网站 https://github.com/mtianyan/Artic ...
- 第三百六十六节,Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)的bool组合查询
第三百六十六节,Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)的bool组合查询 bool查询说明 filter:[],字段的过滤,不参与打分must:[] ...
随机推荐
- Mac 终端实现快速定位命令 自动补全目录
基于macOS oh-my-zsh 切换终端主题 incr.zsh 实现快速定位命令 自动补全目录 效果预览 步骤 1.安装 oh-my-zsh sh -c "$(curl -fsSL ht ...
- mysql 视图 事务 索引
为什么需要有视图 * 对于复杂的查询,往往是有多个数据表进行关联查询而得到,而这种语句往往比较复杂,也可能非常频繁的使用. 比如这样的SQL语句 select goods.name,goods_cat ...
- vue 项目在scope中使用@import引入css ,作用域是全局
有时候引入第三ui插件,修改样式 时候,需要再单独定义style标签,才有效果,可是会影响全局影响全局,如下所示 加上/deep/,就可以了,
- Linux c 操作MySQL
#include <mysql/mysql.h>#include <stdio.h>#include <stdlib.h>int main() { MYSQL *c ...
- vue-router query和params参数的区别
1.query方式传参和接收参数(相当于get请求) this.$router.push({ path:'/home' query:{ id:1 } }) 接收参数: this.$route.quer ...
- 启动查看crontab日志服务
方法1: . 修改rsyslog文件,将/etc/rsyslog.d/-default.conf 文件中的#cron.*前的#删掉: . 重启rsyslog服务service rsyslog rest ...
- Java--类以及对象
什么是类 就是将一类事物的相同的本质特性抽象出来,类具有属性和方法,属性就是特征(具有什么),方法就是行为(能做什么). 类是一种引用的数据类型,类创建的对象的过程叫做实例化 什么是对象 对象就是类中 ...
- [USACO09DEC]雪橇Bobsledding(贪心)
https://www.luogu.org/problem/P2968 题目描述 Bessie has entered a bobsled competition because she hopes ...
- VMware安装 RHEL安装完后,选择桥接模式如何与主机网络连通
.查看主机的ip与网关,dns配置,如图 2.在linux系统中打开cd /etc/sysconfig/network-scripts/ #进入网络配置文件目录 vi ifcfg-eno1677 ...
- 正则表达式sed学习(二)
sedsed是一个流编辑器,非交互式的编辑器,它一次处理一行内容.处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space)接着用 sed 命令处理缓冲区的内容,处理完成 ...