def

python 拉取rds 审计日志

喜你入骨 提交于 2020-12-26 10:10:45
此脚本可以拉取rds 审计日志 并且插入本地数据中。 #!/usr/bin/env python2.6 #coding=utf-8 import os from aliyunsdkcore import client from aliyunsdkrds.request.v20140815 import DescribeSQLLogRecordsRequest import json import urllib import datetime,time import subprocess from subprocess import call import warnings import MySQLdb from math import ceil from retrying import retry dbserver="192.168.0.94" dbuser="root" dbpwd="user@123" dbport=3306 dbname="audit" warnings.filterwarnings("ignore") os.environ["PATH"]="/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin" dblist = ['rm

​LeetCode刷题实战93:复原IP地址

和自甴很熟 提交于 2020-12-26 06:25:44
算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试。所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 ! 今天和大家聊的问题叫做 复原IP地址 ,我们先来看题面: https://leetcode-cn.com/problems/restore-ip-addresses/ Given a string s containing only digits, return all possible valid IP addresses that can be obtained from s. You can return them in any order. A valid IP address consists of exactly four integers, each integer is between 0 and 255, separated by single dots and cannot have leading zeros. For example, "0.1.2.201" and "192.168.1.1" are valid IP addresses and "0.011.255.245", "192.168.1.312" and "192.168@1.1" are invalid

Spark-Streaming

China☆狼群 提交于 2020-12-26 04:29:34
监听文件流 创建文件 在log1.txt输入 A终端打开spark-shell,输入命令 此时监听端已打开 A终端创建新文件log2.txt I love Hadoop I love Spark Spark is slow A结果显示: spark监听套接字流 安装nc工具,并开启端口9999 nc -lk 9999 9999端口如果没打开tcp,需要使用farewall命令开启 编写监听程序 import org.apache.spark._ import org.apache.spark.streaming._ import org.apache.spark.storage.StorageLevel object NetworkWordCount { def main(args: Array[String]) { if (args.length < 2) { System.err.println("Usage: NetworkWordCount <hostname> <port>") System.exit(1) } StreamingExamples.setStreamingLogLevels() // Create the context with a 1 second batch size val sparkConf = new SparkConf()

十大经典排序算法(python实现)(原创)

心已入冬 提交于 2020-12-26 01:28:02
使用场景: 1,空间复杂度 越低越好、n值较大:   堆排序  O(nlog2n)  O(1) 2,无空间复杂度要求、n值较大:   桶排序  O(n+k)    O(n+k) 经典排序算法图解: 经典排序算法的复杂度: 大类一(比较排序法): 1、冒泡排序(Bubble Sort)【前后比较-交换】 python代码实现: 1 d0 = [2, 15, 5, 9, 7, 6, 4, 12, 5, 4, 2, 64, 5, 6, 4, 2, 3, 54, 45, 4, 44 ] 2 d0_out = [2, 2, 2, 3, 4, 4, 4, 4, 5, 5, 5, 6, 6, 7, 9, 12, 15, 44, 45, 54, 64] # 正确排序 3 4 while 1 : 5 state = 0 # 假设本次循环没有改变 6 for i in range(len(d0) - 1 ): 7 if d0[i] > d0[i + 1 ]: 8 d0[i], d0[i + 1] = d0[i + 1 ], d0[i] 9 state = 1 # 有数值交换,那么状态值置1 10 if not state: # 如果没有数值交换,那么就跳出 11 break 12 13 print (d0) 14 print (d0_out) 2、选择排序(Selection Sort)

Django组件-Forms组件

爷,独闯天下 提交于 2020-12-25 18:53:30
Django的Forms组件主要有以下几大功能: 页面初始化,生成HTML标签 校验用户数据(显示错误信息) HTML Form提交保留上次提交数据 一、小试牛刀   1、定义Form类 from django import forms class EmpForm(forms.Form): name = forms.CharField(min_length=5, label= " 姓名 " , error_messages={ " required " : " 该字段不能为空! " , " min_length " : " 用户名太短。 " }) age = forms.IntegerField(label= " 年龄 " ) salary = forms.DecimalField(max_digits=5, decimal_places=2, label= " 工资 " )   2、设计url与视图对应关系 from django.urls import path from app01 import views urlpatterns = [ path('add_emp/', views.add_emp), ]   3、视图函数 from app01.MyForms import EmpForm def add_emp(request): if request.method ==

​LeetCode刷题实战77:组合

混江龙づ霸主 提交于 2020-12-25 17:19:42
算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试。所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 ! 今天和大家聊的问题叫做 组合 ,我们先来看题面: https://leetcode-cn.com/problems/combinations/ Given two integers n and k, return all possible combinations of k numbers out of 1 ... n. You may return the answer in any order. 题意 给定两个整数 n 和 k,返回 1 ... n 中所有可能的 k 个数的组合。 样例 输入: n = 4 , k = 2 输出: [ [2,4 ], [ 3,4 ], [ 2,3 ], [ 1,2 ], [ 1,3 ], [ 1,4 ], ] 解题 https://www.cnblogs.com/techflow/p/13139689.html 递归 这是一个全组合问题,实际上我们之前做过全排列问题。我们来分析一下排列和组合的区别,可能很多人知道这两者的区别,但是对于区别本身的理解和认识不是非常深刻。 排列和组合有一个巨大的区别在于, 排列会考虑物体摆放的顺序 。也就是说同样的元素构成

【spark系列5】spark 3.0.1集成delta 0.7.0原理解析--delta如何进行DDL DML操作以及Catalog plugin API

生来就可爱ヽ(ⅴ<●) 提交于 2020-12-25 16:37:17
前提 本文基于 spark 3.0.1 delta 0.7.0 我们都知道delta.io是一个给数据湖提供可靠性的开源存储层的软件,关于他的用处,可以参考 Delta Lake,让你从复杂的Lambda架构中解放出来 ,上篇文章我们分析了 delta是如何自定义自己的sql ,这篇文章我们分析一下delta数据是如何基于Catalog plugin API进行DDL DML sql操作的(spark 3.x以前是不支持的) 分析 delta在0.7.0以前是不能够进行save表操作的,只能存储到文件中,也就是说他的元数据是和spark的其他元数据是分开的,delta是独立存在的,也是不能和其他表进行关联操作的,只有到了delta 0.7.0版本以后,才真正意义上和spark进行了集成,这也得益于spark 3.x的Catalog plugin API 特性。 还是先从delta的 configurate sparksession 入手,如下: import org.apache.spark.sql.SparkSession val spark = SparkSession .builder() .appName("...") .master("...") .config("spark.sql.extensions", "io.delta.sql

DRF序列化和反序列化(二:ModelSerializer)

你离开我真会死。 提交于 2020-12-25 10:24:02
一: rest_framework 中 serializers.Serializer的不方便之处(以下简称Serializer) a:需要定义每一个字段,并且这个字段是和models字段及其类似。 b:和froms是不是很像,有没有类似ModelFroms类似的模块,简化字段的编写,当然有ModelSerializer就是这中类型 二:ModelSerializer序列化 a:view中的文件不需要修改 b:重新编写BookSerializers继承serializers.ModelSerializer --model 指定哪一个model --fields 表示需要序列化的字段,"__all__"全部字段 --depth 向下查找一层。指对外键关系会继续遍历外键对象的全部属性。(但是如果外键表字段过多,而前端需要的字段并不是很多,使用起来会不方便。所以常常不用) class BookSerializers(serializers.ModelSerializer): class Meta: model = Book # fields=['title','category','publisher','authon'] #可以对字段进行排序 fields="__all__" #所有的字段,但是无序 depth=1 #向下查找一层 c:对部分字段,如外键,choices字段

自动化测试--自动化测试报告

ε祈祈猫儿з 提交于 2020-12-25 05:17:09
一、准备 1、本节用到的模块——HTMLTestRunner 1)下载:下载地址:http://tungwaiyip.info/software/HTMLTestRunner.html 鼠标右键→目标另存为,保存到本地。 2)安装:将下载的HTMLTestRunner.py文件复制到Python安装目录下即可 ...\Python36\Lib 3)验证:在Python交互模式下引入HTMLTestRunner模块,如系统没有报错,则说明添加成功 2、修改HTMLTestRunner 因为HTMLTestRunner是基于Python2开发的,如果在Python3环境下使用,需要对其部分内容进行修改。使用notepad++打开HTMLTestRunner.py文件,修改如下内容: 第94行,将import StringIO修改成import io 第539行,将self.outputBuffer = StringIO.StringIO()修改成self.outputBuffer= io.StringIO() 第631行,将print >> sys.stderr, ‘\nTime Elapsed: %s‘ %(self.stopTime-self.startTime)修改成print(sys.stderr, ‘\nTimeElapsed: %s‘ % (self.stopTime

Django框架(十八)—— drf:序列化组件(serializer)

走远了吗. 提交于 2020-12-25 05:15:47
序列化组件 # 模型层 from django.db import models class Book(models.Model): nid = models.AutoField(primary_key= True) name = models.CharField(max_length=32 ) price = models.DecimalField(max_digits=5, decimal_places=2 ) publish_date = models.DateField() publish = models.ForeignKey(to= ' Publish ' , to_field= ' nid ' , on_delete= models.CASCADE) authors = models.ManyToManyField(to= ' Author ' ) def __str__ (self): return self.name class Author(models.Model): nid = models.AutoField(primary_key= True) name = models.CharField(max_length=32 ) age = models.IntegerField() author_detail = models.OneToOneField