需求 收到一个这样的需求:要求访问腾讯的一个服务,无论身在哪里,都必须通过制定 ip 访问此服务,因为公司之前的 VPN 是我搭的,领导找我做这个需求,但是 VPN 此事并没有能适配此需求,因为我的那个 VPN 只是针对内网服务才走 VPN 流量,而腾讯的相关服务需要走外网流量,而且出口 ip 这个时候需要被代理成指定 ip。所以此文章针对次任务做个记录。 Socks Server 5 搭建 下载软件 下载地址点这里 安装 *下载解压 yum -y install gcc gcc-c++ automake make pam-devel openldap-devel cyrus-sasl-devel openssl-devel wget https://jaist.dl.sourceforge.net/project/ss5/ss5/3.8.9-8/ss5-3.8.9-8.tar.gz tar zxvf ss5-3.8.9-8.tar.gz -C /usr/local/src cd /usr/local/src/ss5-3.8.9 ./configure make && .... 搭建使用Socks Server 5 服务器 Linux
虽然生成器对象的使用方法与迭代器对象类似,但是内部原理是不同的 构建迭代器时,不是把所有元素一次性加载到内存,而是一种延迟计算的方式返回元素。 生成器就是一特殊迭代器,它不会把所有内容放在内存里,每次调用 next()函数时,返回的都是本次计算出来的那个元素,用完之后立刻销毁。 迭代器 可迭代协议 —— 含有iter方法的都是可迭代的 迭代器协议 —— 含有next和iter的都是迭代器 #生成器函数 def generator(): print(1) return 'a' ret = generator() print(ret) #只要含有yield关键字的函数都是生成器函数 #yield不能和return共用且需要写在函数内 def generator(): print(1) yield 'a' #生成器函数 : 执行之后会得到一个生成器作为返回值 ret = generator() print(ret) print(ret.next()) 通过学习,知道了生成器表达式比列表推导式更不占用内存。 例如: 列表推导式: #列表推导式 print([i*i for i in r.... Python之生成器 Python
@函数装饰器 装饰器的作用 —— 不想修改函数的调用方式 但是还想在原来的函数前后添加功能 原则: 开放封闭原则 开放 : 对扩展是开放的 封闭 : 对修改是封闭的 示例 当程序使用“@函数”(比如函数A )装饰另一个函数(比如函数B )时, 实际上完成如下两 步。 将被修饰的函数(函数B )作为参数传给@符号引用的函数(函数A )。 将函数B 替换(装饰)成第①步的返回值。 从上面介绍不难看出,被“@函数”修饰的函数不再是原来的函数,而是被替换成一个新的东西。 看一下实例: def funA(fn): print('A') fn() return 'asdf' ''' 下面的装饰效果相当于funA(funB) funB 将会被替换(装饰)成该语句的返回值 由于funA 函数返回fkit ,因此funB 就是asdf ''' @funA def funB(): print('B') print(funB) 上面程序使用@funA 修饰funB ,这意味着程序要完成两步操作。 ①将funB 作为funA()的参数,也就是上面的粗体字代码相当于执行funA(funB)。 ②将funB 替换.... Python之@函数装饰器 Python
环境安装 scrapy安装 安装依赖: 1.pywin32 pip install pywin32 安装Twisted pip install Twisted 查看版本: C:\Users\cjz>python -m scrapy version Scrapy 1.8.0 创建工程项目 D:\python_cuijianzhe>scrapy startproject scrapy_test New Scrapy project 'scrapy_test', using template directory 'd:\programs\python\python37\lib\site-packages\scrapy\templates\project', created in: D:\python_cuijianzhe\scrapy_test You can start your first spider with: cd scrapy_test scrapy genspider example example.com 查看scrapy创建的文件: D:\pyt.... Scrapy学习 Python
现有表格内容如下: BT 列有全部图片 url 地址: 最终版本优化 #!/usr/bin/python # -- coding: utf-8 -- # @Time : 2019/10/15 21:36 # @Author : cuijianzhe # @File : biaoge.py # @Software: PyCharm import xlrd import requests import os name = input('请输入表格名称:') path = name + '.xls' workbook = xlrd.open_workbook(path) Data_sheet = workbook.sheets()[0] rowNum = Data_sheet.nrows #行数 colNum = Data_sheet.ncols #列数 def get_sitesname(): ''' 提取并添加站点名称 ''' #第一个方法使用列表 sites_list = [] i = 1 #从1开始跳过表头数据 try: for s in range(Data_sheet.nc....... 通过python读取excel表格内容url批量下载 Python
通过钉钉官方接口可定时同步得知企业离职人员便于认证管理同步,大大简便了人员账号的管理。 请求带有参数的 API 接口 注意请求接口白名单情况 可参考钉钉开发文档: 创建应用: 代码示例: import requests import json import sys import os corpId="35c2365db2f1378bfd74f96b7c7a529f" corpSecret="13dc3517caa3da9bee5e7b6b2ead8938" headers = {'Content-Type': 'application/json;charset=utf-8'} api_url = "https://oapi.dingtalk.com/gettoken?appkey=%s&appsecret=%s"%(corpId,corpSecret) def get_token(): try: res = requests.get(api_url,headers=headers) if res.status_code == 200: str_res = res.text to.... 通过 python 获取钉钉后台人员 Python
最近换了一款新皮肤solo-nexmoe,但是无奈一直间歇性报500,但是访问有时有时好的,所以找了一个脚本检测500出现的时间,第一时间去看情况。 shell脚本 #!/bin/bash URL=https://www.cjzshilong.cn DING_URL=https://oapi.dingtalk.com/robot/send?access_token=XXXXXXXXXXXXXXXXXXXXXXX function SendMessageToDingding(){ curl "{DING_URL}" -H 'Content-Type: application/json' -d " { \"actionCard\": { \"title\": \"o(╥﹏╥)o Solo故障啦\", \"text\": \"Web地址: URL\n\n状态码: $1\n\n响应时间:{REQUEST_TIME}秒\n\n当前时间:{DT}\n\n", "hideAvatar": "0", "btnOrientation": "0", "btn.... web状态码检测监控提醒 Linux
一、 python3 + echarts 1.1. python3获取数据展示无线节点图例: 1.1.1 通过snmp获取源数据 #!/bin/env python3 import json import subprocess import os User_list = [] CMD_num = "snmpwalk -v 2c -c limi@2018 10.200.250.5 1.3.6.1.4.1.2011.6.139.13.3.10.1.5 | wc -l" #AP总数 Num = int(subprocess.getoutput(CMD_num)) CMD_name = '''snmpwalk -v 2c -c limi@2018 10.200.250.5 enterprises.2011.6.139.13.3.10.1.5 | awk '{print $4}' | sed 's/"//g' ''' ap_name = subprocess.getoutput(CMD_name) Name_list = ap_name.split("\n") for id in range(0.... python获取数据实现echarts出图 Python
AI 换脸实现 科普:我们人眼看到连续画面的帧数为24 帧,大约 0.04秒,低于0.04就会卡成ppt。电影胶片是24帧 也就是每秒钟可以看到24张图像 低于这个数值就会感觉画面不流畅 所以以24帧为界限 实现思路: 先把源视频文件转换成图片,在用API面部识别进行融合更换面部内容变成其他图形,并且利用软件完成对源文件音频的提取,再次把更换过的图片转换成为视频,并和音频进行融合。 原视频转图片 提取原视频音源 图片面部识别并更换 变化后的图片转视频 音频和视频融合 环境:python3.7 + pycharm-2019.1 + ffmpeg FFmpeg官网 使用实例: 提取音频: ffmpeg -i 1.mp4 -f mp3 1.mp3 2.合成视频和音频 ffmpeg -i 没有声音.mp4 -i 提取生成的.mp3 -strict -2 -f mp4 合成的.mp4 需要的库文件: opencv-python pillow(PIL) subprocess Face++ 面部识别 在此使用旷视科技的人脸识别API进行完成。先对图片进行脸部识别并进行融合,看这里: Face ++官.... python 实现 AI 换脸 Python
妹子图官方网址:https://www.mzitu.com/ 刚接触到BeautifulSoup,所以拿来试下效果,起伏跌宕出来效果。 具体思路?官网首页链接-->获取分页面链接-->通过分页面获取图片链接 看下步骤: 一、分析下页面 1.1 先确保访问正常: 头部信息: url = "https://www.mzitu.com" headers = { 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36', "Referer": "https://www.mzitu.com/101553" } def load_page(url): try: res = requests.get(url,headers=headers) if res.status_code == 200: print('页面请求完毕') return res.text except: print(.... 【福利】python3爬取妹子图 Python
接口测试网站 官方中文文档 urlopen方法: urllib.request.urlopen()函数用于实现对目标url的访问。 函数原型如下:urllib.request.urlopen(url, data=None, [timeout, ]*, cafile=None, capath=None, cadefault=False, context=None) url: 需要打开的网址 data:Post提交的数据(bytes类型,则需要通过bytes()方法转化。另外,如果传递了这个参数,则它的请求方式就不再是GET方式,而是POST方式) timeout:设置网站的访问超时时间 实例如下: import urllib.request response = urllib.request.urlopen('https://www.baidu.com') #请求的响应体 print(response.read().decode()) #响应的状态码 print(response.status) #获取响应头部信息 print(response.getheaders()) 运行结果如下.... Request 方法 Python
python,以目前的能力编写一套实现学生信息增删改查的数据库系统。或许后续会不断提升不断完整的搞出这一套简单的系统(增删改查功能),还差得很多。加油…… 创建数据库和数据表; mysql> create database student; Query OK, 1 row affected (0.01 sec) mysql> use student; Database changed mysql> create table students(id int primary key auto_increment,name varchar(30),sex varchar(30),num int) charset='utf8'; Query OK, 0 rows affected (0.00 sec) 学生管理系统 学生管理系统v1.1 #!/usr/bin/env python3 # -- coding: utf-8 -- # @File : mysqlinfo.py # @Author: cuijianzhe # @Date : # @Desc : ''' 基于数据....... 学生管理系统 Python
python数据库基本操作 操作关键字 创建连接 connect [kəˈnekt] 连接 实例化游标 cursor [ˈkɜːsə(r)] 游标 执行sql语句 execute [ˈeksɪkjuːt] 实行;执行; 提交修改 commit [kəˈmɪt] 做出 事务回滚 rollback [ˈrəʊlbæk] 回落; 关闭游标和链接 close 一、用脚本连接数据库: import pymysql #创建一个对象,用于连接数据库,参数分别设置为地址,用户名,密码,数据库,字符集 db = pymysql.connect(host = 'localhost',user='root',password='598941324',database='cuijianzhe',charset='utf8') #使用cursor方法创建一个游标对象,相当一个操作者 cursor = db.cursor() #编写下sql语句 sql = '''create table teacher( id int primary key auto_increment, name varchar(30), a.... python脚本操作数据库 Python
工具预览 Chrome浏览器,版本最好大于v71 chromedriver selenium 下载chromedriver 需要翻墙,地址为http://chromedriver.chromium.org/downloads,找到符合自己浏览器版本的chromedriver驱动,下载解压后,将chromedriver.exe文件放到Python目录下的Scripts目录下。我已下载75版本 安装selenium pip install selenium 有界面 # -- coding: utf-8 -- import time from selenium import webdriver from selenium.webdriver.common.keys import Keys #myusername = "XXX"#登录账号 #mypassword = "XXX"#登录密码 driver = webdriver.Chrome() #模拟浏览器打开网站 driver.get("https://hacpai.com/login") #driver.maximize_wind.... windows下实现黑客派自动签到 Python
****# 虽然没什么用,学习阶段,练手。 一、 爬取表情包 1、爬取斗图啦: import requests from bs4 import BeautifulSoup import threading glock = threading.Lock() headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36', 'Referer': 'https://hacpai.com/login'} class get_doutu(): def all_htmls(self): htmls = [] for i in range(1,10): url = "https://www.doutula.com/photo/list/?page=%s"%i res = requests.get(url,headers=headers) htmls.append(res.text) ret.... python爬虫实例 Python
两个月前需求:使用python3做一个将观测数据编译产出成bufr数据的一个工具 刚刚完成初版,其中的数据文件路径和数据内容格式还需要仔细核对,但整体逻辑已实现,剩下的工作时间可能会用来完善它 Anaconda3 The open-source Anaconda Distribution is the easiest way to perform Python/R data science and machine learning on Linux, Windows, and Mac OS X. With over 11 million users worldwide, it is the industry standard for developing, testing, and training on a single machine, enabling individual data scientists to: Quickly download 1,500+ Python/R data science packages Manage libraries, dependencie.... py项目中学到的知识梳理 Python
一、字符串、列表、元组、字典、集合练习 1.1 BMI计算输出 BMI指数(Body Mass Index) 以称身体质量指数 BMI值计算公式: BMI = 体重(公斤) / 身高的平方(米) 例如: 一个人69公斤,身高是173公分 BMI = 69 / 1.73**2 = 23.05 标准表: BMI < 18.5 体重过轻 18.5 <= BMI < 24 体重正常 BMI > 24 体重过重 要求: 输入身高的体重,打印出BMI的值并打印体重状况 #!/bin/python3 Height = float(input('请输入身高(米):')) Weight = float(input('请输入体重(公斤):')) BMI = Weight / Height **2 print('%.2f'%BMI) if BMI < 18.5: print('您的体重过轻,BMI值为:%.2f' %BMI) elif BMI < 24: print('您的体重正常,BMI值为:%.2f'%BMI) else: print('您的体重过重,BMI值为:%..... python练习题 Python
现在域名上面很多证书,需要一个强有力的工具去查看并且了解到期时间的状况然后告知你。 检测脚本下载地址: sslooker.kernel3.10.0.x8664.rar 使用方法: #!/bin/bash dir=/tmp/yuming data=date +%Y-%m-%d script=/usr/bin/sslooker yuming=cat /tmp/yuming for i in {yuming[*]} do hours=`echo -e "( script i 443 )" days=echo "hours/24"|bc` if [ "days" -lt "3" ]; then cat > /tmp/sendmail.py << ccc #!/usr/bin/env python3 import os import smtplib from email.mime.text import MIMEText from email.utils import formataddr my_sender = '598941324@qq.co.... 使用python发送邮件告知SSL证书到期时间 Python