Elasticsearch Query DSL入门
列举几个最基础的 DSL 语句,所有长达成百上千行的 DSL 都是由这些基础语法组合起来的。
一、环境
Ubuntu 14.04/16、04
JDK1.8
Elasticsearch 5.3
Kibana 5.3.2
二、DSL介绍
Query DSL 又叫查询表达式,是一种非常灵活又富有表现力的查询语言,采用 JSON 接口的方式实现丰富的查询,并使你的查询语句更灵活、更精确、更易读且易调试。
我平时喜欢借助 Kibana 来执行 DSL 语句......
【Python实战】实时获取tcpdump输出
Python实时获取tcpdump输出。
一、背景
今天有个小需求,要确认客户端有没有往服务端发送udp包,但为了减轻工作量,不想每次到机器上手动执行tcpdump抓包命令。
于是就写了个脚本来释放人力。
二、代码实现
整个脚本我还加了一些其他功能:时间戳、发送端IP提取,数据包分析,数据持久化等。这里都先去掉,仅记录下简单的实时获取tcpdump输出功能。
代码如下:
python
# ......
【Python实战】单变量异常值检测
异常值检测是数据预处理阶段重要的环节,这篇文章介绍下对于单变量异常值检测的常用方法,通过Python代码实现。
一、什么是异常值
异常值是在数据集中与其他观察值有很大差距的数据点,它的存在,会对随后的计算结果产生不适当的影响,因此检测异常值并加以适当的处理是十分必要的。
二、异常值的处理
异常值并不都是坏的,了解这一点非常重要。只是简单地从数据中删除异常......
【Python进阶】经典排序算法
Python实现七种经典排序算法。
一、冒泡排序
介绍
冒泡排序是排序算法中较为简单的一种,英文称为 Bubble Sort。它遍历所有的数据,每次对相邻元素进行两两比较,如果顺序和预先规定的顺序不一致,则进行位置交换;这样一次遍历会将最大或最小的数据上浮到顶端,之后再重复同样的操作,直到所有的数据有序。
如果有n个数据,那么需要的比较次数,所以当数据量很大时,冒泡算法......
【Python进阶】Pythonic风格整理
所谓Pythonic,就是代码风格符合Python的特点,合理使用“语法糖”,使代码简洁优美,更具可读性,便于维护和修改。
一、Python之禅
Python 里有个小彩蛋:
在 Python Shell 里输入 import this
这段话被称作“Python 之禅”(The Zen of Python),它列举了一些 Python 所推崇的理念,比如:
优美胜于丑陋
明确胜于隐晦
简单胜于复杂
…
可读性很重要
不要忽略错误
面对......
【Python基础】Matplotlib模块
Python中的绘图库-Matplotlib。
一、Matplotlib简介与安装
Matplotlib也就是Matrix Plot Library,顾名思义,是Python的绘图库。它可与NumPy一起使用,提供了一种有效的MATLAB开源替代方案。它也可以和图形工具包一起使用,如PyQt和wxPython。
安装方式:执行命令 pip install matplotlib
一般常用的是它的子包PyPlot,提供类似MATLAB的绘图框架。
二、使用方法
绘制一条直线......
【Python基础】SMTP发送邮件
Python使用SMTP发送邮件。
一、准备
1. 开启邮箱的SMTP 服务
这里使用第三方 SMTP 服务发送邮件,可以使用 QQ邮箱,163,Gmail 等的 SMTP 服务,但需要做以下配置,以QQ邮箱为例。
登录QQ邮箱,依次点击最上方的 设置,然后点击 账户。
往下翻页,找到 POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV 这一版块,开启 POP3/SMTP服务。(不同版本的QQ可能会不一样,总之就是找到QQ邮箱......
【Python基础】subprocess模块
Python执行Linux的Shell命令方法总结。
一、简介
工作中经常会遇到写工具脚本的需求,需要我们通过Python来执行shell命令。
Python中可以执行shell命令的相关模块和函数有:
● os.system
● os.spawn*
● os.popen* –废弃
● popen2.* –废弃
● commands.* –废弃,3.x中被移除
乍一看是不是很凌乱,怎么有那么多,选择恐惧症啊:到底哪个是主流呢?
以前我比较常用......
【Python基础】文本文件读写
Python中常用文件读写方法汇总。
一、打开文件模式
打开文件模式列表:
模式
r
r+
w
w+
a
a+
读
+
+
+
+
写
+
+
+
+
+
创建
+
+
+
+
覆盖
+
+
指针在开始
+
+
+
+
指针在结尾
+
+
二、读取文本文件
python常用的读取文件函数有三种read()、readline()、readlines()
1. read() 一次性读全部内容
read()会一次性读取文本中全部的内容......
【Python基础】时间和日期模块
Python中的time和datetime用法整理。
一、Python中时间的四种类型
时间戳 float
时间元组 struct_time
时间字符串 string
时间对象 datetime,date,time
二、time模块
python
# 导入包
import time
1. 时间类型
以时间戳(秒)形式,返回当前时间
python
time.time()
# 输出:1552884340.400742
以时间元组形式 struct_time,返回本地时间
python
time.localtime()
......