Fannnhao's blog

用技术和代码创造价值

部署Flask-Web项目踩坑之旅

前言 献给那些和我一样懵懂中不断汲取知识,进步的人们。 部署目标 web项目基于python3+flask+MySQL进行开发。项目为实验室资产管理平台,面向用户为实验室管理员提供管理权限,为其他同事提供查询权限。 项目准备部署在本地虚拟机系统上(Linux),采用服务器组件为nginx+uWSGI+MySQL,至于为什么选择这些组件,因为是行业标准。刚开始部署的时候采用的是centos系统......

shell编程的一些Tips

前言 本文主要总结编写shelll脚本时会遇到的一些坑,另外总结shell编程中如何实现外部传参。 shell编程 注意事项 .sh文件头部需要添加如下信息,笔者曾因为漏写了bin前面的/,执行时出现各种未知问题。 1#!/bin/bash 注意.sh文件的编码格式,打开.sh文件 1vim example.sh 不进入.sh文件的编辑模式,输入如下命令然后回车查看文件格式 1:set ff......

scapy包总结

前言 本文主要依据官网文档(英文)和源码相关函数用法编写。如有错误,欢迎反馈。 scapy包介绍 scapy包模块主要用来构造或者伪造网络中的各种数据报文。提供了从Ether层、IP层、传输层(UDP/TCP)、数据层各层的数据报文字段的构造方法。也可以用来解析数据报文。并能实现伪造异常报文,网络攻击,探测等功能。 scapy模块还支持构造IPv6报文,802.11无线报文以及蓝牙报文(只支......

xlrd模块用法的一些总结

xlrd模块 介绍 python xlrd库主要用来读取excel表格文件的数据,支持.xls和.xlsx类型的文件。 python版本3.6,xlrd版本1.1.0。 1pip3 install xlrd 基础用法 打开一份excel表格 12import xlrddata = xlrd.open_workbook(path) 获取excel文件所有工作簿的名称 1names = data......

关于python参数传递的理解

前言 之前和同学聊到了python关键字del与内存回收相关的问题。通过以下内容可以帮助理解 参数 参数有形参和实参之分。形参也就是形式参数,不在内存中占用内存地址,如def定义函数时括号内的变量就是形参。实参全称为实际参数,在调用函数时提供的值或者变量称作为实际参数,占用内存地址。 12345678910#下面x,y即为形参def add(x,y): return x+y#1,2为实......

centos常用相关命令总结

前言 因为公司自动化平台基于centos,所以与centos系统打交道较多。本篇博文主要将平时常用的一些linux命令总结记录一下。所以对一些命令的具体参数不会详细介绍。 后续持续更新中····· 常用命令 ifconfig 查看eth0接口相关信息 1ifconfig eth0 关闭/启用eth0接口 12ifconfig eth0 downifconfig eth0 up ps 查看所有......

解析数据包

关于如何解析网络数据报文的方法与Python代码

关于python装饰器的理解

装饰器是什么 “装饰器”(Decorator)可以让其他函数在不需要做任何代码变动的前提下增加额外功能。简单的说,装饰器的作用就是为已经存在的函数或对象添加额外的功能。本质上,decorator是一个返回函数的高阶函数。具体使用场景:插入日志、性能测试、事务处理、缓存、权限校验等场景。 之前通过实际代码学习和装饰器的具体用途。代码记录如下: 普通装饰器 python提供了可变参数*args和......

MacOS平台安装PyQt5以及如何打开QtDesigner踩坑记录

之前因为工作任务,使用PyQt写过几个工具项目。后面想要在家里写PyQt程序,系统平台为MacOS。通过快捷命令安装PyQt5工具包后,却没有找到Designer 安装 安装qt程序 1brew install qt 安装sip 1brew install sip 安装PyQt5 1pip install PyQt5 打开QtDesigner 使用命令打开Qt-Designer画图程序 1o......

python打包成可执行程序踩坑总结

前言 为了方便将开发的测试工具交付给测试人员使用,查阅资料得知python有以下几个打包工具。将使用过程与心得总结记录下来。 持续更新中···· py2exe py2exe是一个将python脚本转换成windows上的可独立执行的可执行程序(*.exe)的工具。这样,你就可以不用装python和其他相关环境,而可以在windows系统上运行这个可执行程序。 用法: 1、写一个用于发布程序的......