- 博客(145)
- 资源 (10)
- 收藏
- 关注
原创 selenium报错session not created: DevToolsActivePort file doesn‘t exist
session not created: DevToolsActivePort file doesn't exist
2024-07-28 16:57:49
357
原创 django使用uuid的坑,据说有外国公司已经为此损失了超1w刀
上述代码错误的地方在于,default=str(uuid.uuid4())这部分代码会在模块加载时执行一次,生成一个固定的uuid, 相当于default=“xxxxxxx32432”, 这会导致每次插入数据时是一个固定的字符串,而不是我们预期的每次插入数据时新生成一个uuid字符串作为id,数据库id字段的唯一性限制将导致插入数据失败。这样传递给default参数的就明显的是一个匿名函数,每次插入数据都会新生成一个新的uuid字符串。
2024-06-23 17:10:39
256
原创 selenium非全新的方式同时启动多个浏览器又互不影响的一种实现方法,欢迎讨论!
selenium非全新的方式启动多个浏览器又互不影响的一种实现方法,欢迎讨论!
2024-06-06 23:31:32
569
原创 pycharm编码混乱?中英文混合时中文乱码?教你如何处理
但是,还是可能出现中文乱码,尤其是一些非py文件,教你如何处理,如下:全局编码和项目编码以及一些属性文件(针对一些非py文件)的编码全都勾选utf-8,勾选不含BOM,问题解决。python2每个py文件头都要加“# coding:utf-8”python3默认都是utf-8。
2024-02-05 06:08:40
201
1
原创 pycharm或者idea中Run/Debug Python项目报错 Argument for @NotNull parameter ‘module‘ of ...
这里提供一个简单粗暴的办法,直接打开项目目录,删掉 .idea 文件夹,pycharm或者idea重新打开项目即可。网上一大堆回答,步骤繁琐。
2024-02-02 23:03:48
1222
2
原创 冒泡排序的最好时间复杂度是O(n)
当内部的一次for遍历没有产生任何交换的动作时,该数组已经有序。如上算法才能说冒泡排序的最好时间复杂度是O(n)
2023-12-05 06:45:36
155
原创 谈谈c语言中的sizeof
在这个示例中,我们使用sizeof运算符来获取整数类型(int)和浮点类型(double)的大小,以及变量x和变量y的大小,以及数组的大小。可以看到,对于整数类型和浮点类型,sizeof返回的大小是8字节和4字节,分别对应于64位系统和32位系统的内存对齐要求。对于变量x和变量y,sizeof返回的大小也是4字节和8字节,这是因为变量x是整数类型,变量y是浮点类型。sizeof运算符主要用于在编译时确定特定类型或对象的大小,它返回的是类型或对象在内存中的字节数。
2023-12-05 06:16:22
201
原创 pycharm 打开Terminal时报错activate.ps1,因为在此系统上禁止运行脚本,并因此无法进入虚拟环境
网上说可以set_restrict=False什么的,虽然也可但可能会降低电脑安全性,可以将下面的终端改为cmd.exe即可。pycharm 打开Terminal时报错activate.ps1,因为在此系统上禁止运行脚本,并因此无法进入虚拟环境。
2023-08-30 21:13:08
723
原创 pycharm里面的打开的html页面效果和外面单独打开html的效果不一样!
pycharm里面打开的html页面效果和外面单独打开的不一致!特此记录
2022-10-24 06:50:01
633
1
原创 python将整数转换成二进制形式的方法
1、写函数采用 短除法 的方式来算。>>> binary = lambda n: "" if n==0 else binary(n//2) + str(n%2)>>> binary(3)'11'>>> binary(5)'101'>>>不使用匿名函数:def recursive_get(n): if n == 0: return "" return recursive_get(n//2)
2022-04-27 07:38:35
17201
2
原创 从windows上直接上传文件到linux可能会遇到的问题,需要装dos2unix
/tmp/cceeWwtY.o: In function `main':helloworld.cpp:(.text+0xa): undefined reference to `std::cout'helloworld.cpp:(.text+0xf): undefined reference to `std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_t
2022-04-11 21:48:52
1168
原创 Visual Studio2022调试程序时,无法查看变量值,为该变量添加监视,则显示为“未定义标识符”
#include <iostream>#define a 100;int main(){ using namespace std; const int fk = 1; cout << fk + 1 << a + 1; cout << endl;}断点调试时查看fk的值,发现显示“未定义标识符”【问题原因】在Debug模式下选择了代码优化选项,因此在运行过程中,部分变量被编译器通过优化省略了。【解决方案】项目》co
2022-04-06 08:41:01
16069
3
原创 Windows10安装Linux子系统(Ubuntu)
安装参考如下两篇博客Windows10下安装Linux子系统Windows10安装Linux子系统Ubuntu补充:ip和windows一致,不用额外配置。相比虚拟机只占少量内存。可以在安装之后将开发者选项关闭(更安全?)windows可访问你在Linux上创建的目录,举例如下:C:\Users\用户名\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState\rootfs
2022-03-26 10:18:26
1618
原创 Python2代码转换Python3脚本工具2to3
2to3 - 自动将 Python 2 代码转为 Python 3 代码1.转换并备份原文件,会生成一个.bak文件2to3.exe -w test.py2.转换不备份原文件2to3.exe -n test.py更多查看帮助 2to3.exe --helpUsage: 2to3 [options] file|dir ...Options: -h, --help show this help message and exit -d, --doctests
2022-03-08 22:55:21
433
原创 解决pycharm不支持getpass.getpass及类似需要输入但不支持的问题
点击Edit Configurations,勾选 Emulate terminal in output console 即可。注:该设置仅针对当前的程序文件
2022-03-05 20:21:20
742
原创 pycharm debug模式显示 collection data
1.Gevent compatiblepycharm打开settings->debugger->python debugger->选中Gevent compatiblestackoverflow2.实践过程中的体会一开始勾选Gevent compatible是因为远程调试的时候查看变量值卡顿,单步调试也卡死了,这时候勾选这个选项就能解决问题。PS.我远程调试的环境是通过跳板机(堡垒机)连接宿主机,宿主机端口映射到docker容器内,调试docker容器里的python代码。后来我返校了,就不需要通过
2022-01-25 23:30:21
1475
原创 centos上自建git仓库过程记录
1、安装Gityum install git2、创建一个git用户组和用户,用来运行git服务:groupadd gituseradd git -g git3、选定一个目录作为存放各种git仓库的总目录cd /homemkdir gitrepochown git:git gitrepo/4.创建空的git仓库cd gitrepogit init --bare runoob.gitInitialized empty Git repository in /home/gitrepo/
2022-01-04 22:05:59
536
原创 python参数默认值
官方文档很详细啊!python官方文档4.7.1. Default Argument Values¶This example also introduces the in keyword. This tests whether or not a sequence contains a certain value.The default values are evaluated at the point of function definition in the defining scope, so
2022-01-03 10:54:50
2643
原创 pycharm通过ssh拉取git仓库(自建)遇到ssh_askpass: posix_spawnp: Unknown error
ssh_askpass: posix_spawnp: Unknown error xxx@192.198.0.xx: Permission denie分析:就是权限拒绝呗,常规讲pycharm不应该弹个窗啥的吗?如下:但我的pycharm直接报错,连上面的弹窗都没有,我去,搞了好久,卸载了最新版git.exe,安装老点的Git 64位_2.20.1.1.exe才有上面的弹窗!具体可能是安装最新版git时勾选配置时错误了吧!有人说可能是ssh密钥配置的不对吧,但是我都配置了,一样不行,关于有没有配置s
2022-01-03 00:06:54
1829
1
原创 csrf攻击与防护—4初探flask-wtf的csrf防护机制和攻击
from flask import Flaskfrom flask import render_templatefrom flask_wtf import FlaskFormfrom wtforms import StringFieldfrom wtforms.validators import DataRequiredapp = Flask("xx")app.config['SECRET_KEY'] = '3536aweraasdf_r5534rwe_fwrwerer'class
2021-12-16 22:48:42
159
原创 csrf攻击与防护—3用flask简单演示防范csrf攻击之token验证
csrf攻击与防护—2用flask简单演示防范csrf攻击之refererCSRF 攻击之所以能够成功,是因为黑客可以完全伪造用户的请求,该请求中所有的用户验证信息都是存在于 cookie 中,因此黑客可以在不知道这些验证信息的情况下直接利用用户自己的 cookie 来通过安全验证。要抵御 CSRF,关键在于在请求中放入黑客所不能伪造的信息,并且该信息不存在于 cookie 之中。可以在 HTTP 请求中以参数的形式加入一个随机产生的 token,并在服务器端建立一个拦截器来验证这个 token,如果请求
2021-12-07 07:41:28
552
原创 csrf攻击与防护—2用flask简单演示防范csrf攻击之referer
接上篇csrf攻击与防护—1用flask简单演示csrf攻击以下是根据referer字段防止csrf攻击的新代码:bank.pyfrom flask import render_template, Flask, request, jsonify, make_responseapp = Flask("haha")YOUR_BANK_COUNT = 1000000000TOKEN = "0ofjsfnnfgxgxgxgreituto"@app.route("/")def root():
2021-12-06 23:29:20
666
原创 csrf攻击与防护—1用flask简单演示csrf攻击
目录结构flask_test|__templates(它包含bank_page.html和page_attack.html)|__bank.py|__csrf_attack.pybank.pyfrom flask import render_template, Flask, request, jsonify, make_responseapp = Flask("haha")YOUR_BANK_COUNT = 1000000000TOKEN = "0ofjsfnnfgxgxgxgreitu
2021-12-06 23:07:44
313
原创 python3对类中的方法限制比python2放的更开了
作为一个python老鸟,最近在辅导一个同事学习python,她提出了一些稀奇古怪的问题,比如在我的意识中,下面的代码是肯定运行不了的# coding:utf-8class Test(object): def print_name(name): print(name)Test.print_name("ali")因为在类里如果一个方法没有任何装饰器(比如classmethod/staticmethod)装饰的话,那么它就是一个实例方法,至少需要一个参数,而且第一个参数就是实
2021-12-04 11:51:00
597
原创 浅谈递归转非递归
递归的本质递归函数的本质是“(函数)栈”的使用,所以我们如果可以手动模拟这个栈及出栈入栈的过程,那就可以免掉函数多次调用的开销,将递归转换为非递归一个求全排列的例子递归方式class Permute: @staticmethod def get_all_permute(l_raw: list) -> list: list_all = [] def recursive_permute(l_tmp: list, l_res: list = [])
2021-11-24 07:02:30
462
原创 random
random生成服从各类分布的随机数一.伪随机数与计算机模拟我们知道,计算机对于事务的处理在物理层面上基于电路信号的变换,所以计算机并不能在无输入信息的情况下产生符合统计学特征的随机序列。现实世界中,严格意义上的随机数在某次产生过程中是按照实验过程中表现的分布概率随机产生的,其结果是不可预测的。而计算机中随机函数则是按照一定算法模拟产生的,其结果是确定的,可预见的,因此用计算机随机函数所产生的“随机数”实际上是“伪随机数”。计算机产生的每一个随机序列都需要一个输入信息作为随机种子,随机种子由用户事先设
2021-11-09 22:50:22
153
delete_sharefile.zip
2020-03-14
m3u8视频合并为mp4小程序(非加密版)
2020-03-08
23种软件设计模式概述(c++版QZ爬取).pdf
2019-09-17
23种软件设计模式概述.pdf
2019-09-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人