自学旅程
机智豪SAMA
这个作者很懒,什么都没留下…
展开
-
go gin web框架实现从GET参数中(像PHP一样)获取 数组 或者map 映射。
Stack Overflow原问题与回答的链接:How can golang gin get the array parameters of GET requests query string?。使用QueryArray来直接获取数组例如/GET ?a[]=1&a[]=2后端获取方式为// Return an arraya, _ := ctx.GetQueryArray("a[]") // Or just use QueryArray("a[]") directly.ctx.JSON原创 2020-11-14 16:19:07 · 1180 阅读 · 1 评论 -
Go 中对mongodb中某一个值+1并返回查找的结果
没找到什么直接的教程,我这里直接写一个例子(mongodb是真的香,小声BB)使用mongodb的FindOneAndUpdate()方法。具体实现:// collection 为 某一个具体的Collection.var prototype xxx // 你自己的数据结构id, err := primitive.ObjectIDFromHex("xxxxxxxxx") // 转为id值filter := bson.D{{"_id": id}} //查询idafter := option原创 2020-09-18 19:24:17 · 2173 阅读 · 0 评论 -
在Go 的结构体中使用多个标签,以及不希望部分属性转到json中。
写gin项目的时候为了对应表单,gorm等字段。需要为结构体中的成员使用标签。使用多标签:type A struct{ ID int Username string `form:"username" gorm:"varchar(255);not null"` .....}原创 2020-06-23 23:15:59 · 6831 阅读 · 0 评论 -
为Windows的Python GUI设置正确的DPI感知,出现__main__.pyinstallerimporterror failed to load dynlib/dll.
先上SO 原问题(本人提出的):__main__.pyinstallerimporterror-failed-to-load-dynlib-dll-shcore.,博客写的有点晚。本人做了一个tkinter GUI的程序,为了解决缩放和鼠标坐标的问题,使用了import ctypesctypes.windll.shcore.SetProcessDpiAwareness(2)是可以在我的电脑上正常工作的(Windows 10)。然后换了Windows 7,出现了如题中出现的问题。出现问题的原因是(原创 2020-06-22 22:30:03 · 1807 阅读 · 0 评论 -
Goland 控制台中 Gin 颜色代码 显示异常(出现奇怪的代码)
Stack Overflow原问题在这(我提的):Goland shows some strange characters in console在Goland中直接运行代码时,会出现一些很奇怪的代码:解决方案:打开 Help | Find Action…键入Registry。查找go.run.processes.with.pty并禁用它。...原创 2020-06-11 19:08:23 · 1819 阅读 · 7 评论 -
Python One-line code记录,And和Or的妙用
简单的If和Else:a = 4if a > 3: if a > 4: j = ">4" else: j = "3< <=4"else: j = "<=3"# there are the same.print(j)print(a>3 and (a>4 and ">4" or...原创 2020-03-24 16:47:30 · 406 阅读 · 0 评论 -
50行代码不到 利用python+tkinter制作基础的截图工具
完整代码import tkinter as tk# from tkinter import *from PIL import Image, ImageGrab, ImageTkimport ctypes, sysif sys.getwindowsversion().major == 10: ctypes.windll.shcore.SetProcessDpiAwareness(...原创 2020-03-20 21:47:33 · 362 阅读 · 0 评论 -
利用pandas 和 ttk.Treeviews制作xlsx视图工具
import tkinter as tkfrom tkinter import ttkimport pandas as pddef Start(): fp = pd.read_excel("./test.xlsx") for _ in range(len(fp.index.values)): tree.insert('','end',value=tuple(...原创 2020-03-19 15:11:57 · 1290 阅读 · 2 评论 -
Python 制作FPS的后坐力下压
这个代码实现简单的一批,直接上代码,哎放假好无聊噢,import timeimport win32apiimport win32conLMB = win32con.VK_LBUTTONdef is_lmb_pressed(): return win32api.GetKeyState(LMB) < 0def mouse_move_relative(dx, dy):...原创 2020-02-12 11:19:05 · 1152 阅读 · 0 评论 -
tkinter中一个很重要的要点
对于任何一个需要绑定的东西如:.after().bind()不能直接传参数,(如果传参数,那么在运行到这个地方的时候则会直接运行该方法,甚至导致.bind()或者.after()失效)必须要用lambda: 你的函数(你的参数),如果你在.after里面出现了传参的方法,那么大概率会出现以下异常:RuntimeError: maximum recursion depth exceeded...原创 2020-02-08 21:29:55 · 306 阅读 · 0 评论 -
python处理 pywintypes.error 异常
我的原答案见:https://stackoverflow.com/questions/25053785/how-to-catch-these-exceptions-individually/60075942#60075942之前使用有关win32的库时,有时候会出现pywintypes.error异常,但我看的各种异常里面并没有看到pywintypes.error的异常。今天调试了一下:发...原创 2020-02-05 21:26:47 · 9272 阅读 · 0 评论 -
python 获取github某仓库的 release的最新版本信息
其实这个比较简单的辣。注意2个点:当你直接使用requests.get("某个github的release页的url").text会发现页面源码和你get得到的源码不一样。因为页面是动态加载ajax不建议直接爬取仓库release页,有些release的页面有最新发布的标签所用xpath不一样(如果你不用xpath,你用其他的也OK,但俺xpath算比较迅速),所以url= ht...原创 2020-02-04 21:51:58 · 2069 阅读 · 0 评论 -
Tkinter实现当选择一个不同下拉框(Combobox,OptionMenu都可)的值时修改另一个下拉框的值
这个国内依旧没有教程。本人之前也以为无法实现,查阅各种资料找到了方法。实例:import tkinterfrom tkinter import ttkdef change(*args): global list if (mode.get() == "A"): list2.config(values=["you choose A"]) lis...原创 2020-01-03 19:32:24 · 3208 阅读 · 2 评论 -
Tkinter实现选择不同的单选框Radiobutton选项时修改另一个下拉菜单Combobox(OptionMenu也可)的选项内容
我看国内好像根本没什么教程讲tkinter,去SO站上找到了一些教程实例:import tkinterfrom tkinter import ttkdef change(): global list if (mode.get() == "A"): list.config(values=["A"]) list.current(0) e...原创 2020-01-03 19:05:51 · 1187 阅读 · 0 评论 -
python (pycharm) 中os库的相对路径问题
今天准备修改之前的小工具文件,用了os.path.exists()方法判断是否存在某文件使用了相对路径。文件原本路径如下- python - xxxxx - xxxxx - python project - test.py - important - a.txt之前用pycharm打开的项目文件夹都是用的python project,这次使用的python文件夹打开...原创 2019-12-28 23:23:48 · 3695 阅读 · 1 评论 -
Mybatis学习(二)
编写日志输出环境配置文件配置好环境后,工程目录结构基本出来了此时编写日志输出环境配置文件,打开.properties文件写入以下信息:log4j.rootLogger = DEBUG, stdout # 开发时选择DEBUG(会在控制台打印底层运行信息),生产环境设置为INFO(控制台打印出程序运行的主要步骤信息)或者ERROR(打印出不影响程序运行的错误事件),后面的stdout代表...原创 2019-12-27 01:29:09 · 88 阅读 · 0 评论 -
Mybatis学习(一)
MyBatis整体构架数据源配置文件数据库的数据源配置文件是SqlMapConfig.xml,要配置数据库驱动,数据库链接地址,用户名,密码等。如果有性能要求,可以配置连接池的连接数和空闲时间等参数。大致内容(部分配置):<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE configurationPUBLIC "-//...原创 2019-12-26 18:23:42 · 118 阅读 · 0 评论 -
java学习日记(1)
编译java程序 在写完java 代码之后,在cmd中输入如下指令:javac -d destdir srcFile。其中"-d desdir"是javac的命令一种。用以指定编译生成的文件存放路径。destdir就是本地磁盘的一个路径,srcFile就是java源文件所在的位置。(在当前路径下生成destdir可以直接用.来代替)运行java程序 在编译java之后,会生成一个.c...原创 2019-12-22 23:44:14 · 157 阅读 · 0 评论 -
ctf试炼笔记(定期编辑更新)
sql-labs试炼:基础方法1、有关union select:判断注入位。然后前提条件:有显示位(即有数据库展示数据的位置)常用方法:group_concat():一次性打出mysql的information_schema库内含数据库的许多信息:综合以上一般注入可以用到:①、group_concat(table_name) from INFORMATION_SCHEMA.tab...原创 2019-09-27 23:56:41 · 350 阅读 · 0 评论 -
python制作"QQ游戏--大家来找茬"游戏辅助(一)
"大家来找茬"是我小时候在家里家里人都喜欢玩的一款休闲游戏,因为这游戏可以考验人的眼力和反应能力才不是因为电脑垃圾玩不了其他大作游戏(╯‵□′)╯︵┻━┻ 最近了解到了一个特别牛逼的python第三方库———pywin32库,这个库是超级牛逼,打个比方,可以根据你的代码,大到鼠标操作,键盘操作,小到弹窗的声音,都能做到。不过网上关于该库的教程太少了,找不到专门的python文档来看。 ...原创 2019-05-15 15:23:02 · 3290 阅读 · 2 评论 -
python之类的特殊方法
1、__repr__方法:我的理解:如果定义一个class后里面没有__repr__方法直接print ( 类名 )将会打出一个16位的16进制的数字(按照尿性来看应该是存储的地址),如果里面有__repr__方法,那么此时print ( 类名 )会显示__repr__的返回值。(return什么显示什么)2、del__方法:与__init__方法对应的__del__函数,当系统将要回收某个...原创 2019-03-19 14:13:40 · 884 阅读 · 1 评论 -
利用python+tkinter设置小程序的开机启动
设置开机启动有两种方式(我所知道的):1、修改注册表2、在系统文件夹的开始菜单文件下,如果找不到可以看这个,教程在这里这里我用了第二个方法,并以tkinter作为媒介写了一个菜单窗口,在设置选项里面,上源码:import sysimport tkinterimport osimport pythoncomfrom win32com.shell import shelldef b...原创 2019-08-17 16:45:37 · 1397 阅读 · 0 评论 -
使用pyinstaller打包使用tcl/tk扩展
现在网上很多的pyinstaller教程都已经过时了。比如这篇18年的博客:https://blog.csdn.net/BearStarX/article/details/81054134不说其他的参数,但这个参数是错的,总之是无法使用,会报错在多次查询资料后,有两种方法:1、在.spec里面的datas里面加入该tcl/tk扩展的路径以及名称。执行pyinstaller [-w] ...原创 2019-08-20 15:43:30 · 1336 阅读 · 0 评论 -
自定义博客--看板娘透明度以及鼠标移动在头像上的变化
这篇博客所完成的事情花了我很久的时间。看板娘的透明度 之前看板娘的透明度我在网上找了很久都没找到相关教程,之前也看到有一些人的博客的看板娘是透明的,按照一些人的代码来看,应该在站点配置文件里面加入react: defaultOpacity: 0.8 hoverOpacity: 1但代码加入后并没有什么用,于是我便考虑在…/themes/next/source/css...原创 2019-04-15 21:56:59 · 1231 阅读 · 0 评论 -
正则表达式入门(至贪婪与懒惰前)
1、如果精确搜索a,需要使用\ba\b。2、如果搜索条件是a后面不远处有一个b,\ba\b.*\bb\b。其中,这里的.是一个元字符,匹配除了换行符的任意字符,*代表可以匹配任意数量个不包含换行的字符。(\b可以理解为匹配一个单词的开始和结束)3、有一个字符串为0\d\d-\d\d\d\d\d,这样的字符串,代表是以0开头,然后0后面有2个数字,然后是一个-,然后是5个数字这样子的字符串(\d...原创 2019-04-02 15:39:16 · 148 阅读 · 0 评论 -
python与正则表达式
首先要import re模块以下.前面可以是_sre.SRE_Pattern对象,或者就是re,如果是_sre.SRE_Pattern对象,就可以直接跳过pattern这一项。(关于_sre.SRE_Pattern对象(自己理解):就是一个正则表达式)(关于_sre.SRE_Match(match)对象(自己的理解):直接print该对象会显示,含有span和match两种属性,span就是...原创 2019-04-02 15:37:47 · 211 阅读 · 0 评论 -
mysql入门自学总结
MySQL的数据类型:最近看到了python的数据库那里,于是打算试一试mysql和python的结合使用。(1)整型:tinyint(m):1个字节 范围(-128~127)smallint(m):2个字节 范围(-32768~32767)mediumint(m):3个字节 范围(-8388608~8388607)int(m):4个字节 范围(-8388608~8388607)bi...原创 2019-03-27 16:24:20 · 104 阅读 · 0 评论 -
关于正则表达式的补充(贪婪和懒惰)
之前一直是因为有点浮躁正则表达式没看完,今天打算看完,发现其实也挺简单的,因为今天爬图片的时候也发现了这个问题。简单叙述贪婪和懒惰:某个字符串:abccc正则表达式:ab.*c测试结果:abccc,但其实又分析可知:abc,abcc都符合条件,但匹配结果是abccc,很好理解,这就是贪婪。正则表达式一般趋向于最大长度匹配,即当某段字符串符合条件后,如果后面同时也符合条件,则会一直向后匹配...原创 2019-04-05 16:58:51 · 115 阅读 · 0 评论 -
python异常
异常:1、异常的调用种类:①参数不够,发生索引错误,调用IndexError对应的expcet块处理异常②输入的参数与需求不同,发生数值错误,调用ValueError块处理异常③发生除0异常,调用ArithmeticError块处理异常④出现其他异常,肯定是Exception的子类,调用Exception块处理异常2、多异常捕获:可以将多个异常用元祖封装在一个expect里面,当发生...原创 2019-03-12 21:52:47 · 114 阅读 · 1 评论 -
python之模块与包
模块:1、载入模块的两种方法:①import 模块1,模块2…(as 别名)使用方法:模块1.某方法( )(或者别名.某方法( ) )②from 模块1,模块2… import 方法1,方法2使用方法:方法1()**这就是直接使用了,也会覆盖已有的属性和方法另:不建议使用from 模块 import *,这相当于导入模块的所有方法,如果在文件中同名的方法将会被覆盖。2、在一个模块里...原创 2019-03-19 20:09:47 · 103 阅读 · 0 评论 -
炒鸡详细炒鸡详细的位运算!!!!!----&,|,^,~,左移,右移运算
一个菜鸟的python学习记录(位运算)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;最近学到了python的运算这一块。&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;原创 2019-03-08 20:34:13 · 178 阅读 · 1 评论 -
python章节(序列)笔记
1、元祖和列表:①元祖不可改动,且定义元祖用(),而定义列表用[ ],列表可以修改。②元祖和列表不能相加。元祖或者列表×N相当于元祖或者列表里面的元素按顺序重复N次。2、在一些可以用索引的里面凡是有[ n;m ]是从n到m所有的全部,并不是只是n和m3、max(),min(),len(),括号里面加列表元祖数组字符串都能用5(列表增加)、①可以用.append(x)在结尾增加一个x(...原创 2019-02-13 16:24:40 · 403 阅读 · 1 评论 -
python简单的图片爬取以及批量下载
好久没学习爬虫了,于是天天浮躁搭博客,现在学习下载文件试试,今天就试了试下载图片,SADE,开始吧。d(`・∀・)b。 我是以谭文弟弟的博客为例子,这个B标签太多了内容太难提取了,我于是打算下载他博客中所有图片,我们先进入这个B的博客页面,按下F12查看源,可以得到页面的html代码,额,这里只爬取图片所以很简单图片嘛,我们只需要在标签的<img src="x">可以知道图片的...原创 2019-04-14 00:33:13 · 863 阅读 · 0 评论 -
安装pyinstaller报AttributeError:module 'setuptools.build_meta' has no attribute '__legacy__'等错误
安装pyinstaller首先要安装pywin32,在cmd中pip install pywin32安装完成后,继续输入pip install pyinstaller最后一行出现了AttributeError: module 'setuptools.build_meta' has no attribute '__legacy__'奇怪的是,百度居然连这个代码一点都搜不到辣鸡百度,...原创 2019-04-23 00:21:58 · 9334 阅读 · 16 评论 -
自制github博客自动上传为在线图片的辅助工具
本人做笔记之前用的微软的sticky note,但由于太过于单一,能使用的格式太少,所以我就换了一个做笔记的软件----vnote,这个软件比较好的就是支持markdown,所以我还可以用来写博客。写这个工具的目的是因为我之前每次有博客要git到博客上面去的时候,都要先上传图片到图床(之前也是打算先写在csdn里面,然后直接将csdn博客导出为markdown再上传,似乎csdn的博客图片不能外...原创 2019-07-14 10:44:30 · 264 阅读 · 1 评论 -
图片去噪的一种思路与方法(用途:识别验证码等),接很久之前的找茬的那篇博客
1、简单暴力的去噪思路: 把图片分成众多小矩形,每一个小矩形进行判断白点(图片已经二值化处理),如果该矩形内的白点大于一个值(这个值可以根据你取得矩形的大小进行酌情处理)。小于这个值则这一块的值变成0(黑色)。...原创 2019-07-04 00:15:10 · 421 阅读 · 3 评论 -
java环境配置,以及安装eclipse时弹出网页jre missing
我之前安装过jre(为了玩MC),听说安装jdk时会自动装一个jre,然后我把程序名为java 8 update 211的程序卸载了,https://blog.csdn.net/F_K999/article/details/90230546...原创 2019-06-27 22:13:00 · 1746 阅读 · 3 评论 -
django学习笔记(自用)
django视频学习:···p9有关数据模型需要看看。以下知识应该可以自己搭博客了。django这种大框架有点难开头,教程我也找了很多,发现这种大框架还是看视频学比较好,我找到了很好学的教程models.py:与数据库进行交互。models下有以下数据模型:CharField、DateTimeField、IntegerField、BooleanField…当没有规定主键的时候会自动生成主...原创 2019-05-26 16:24:27 · 257 阅读 · 0 评论 -
简单的验证码识别(PIL+pytesseract+request)
最近打算学django框架,一些好玩的东西就放在周末玩玩。所以更这种小工具之类的好玩的东西就延后点啦(つ´ω`)つ。最近尝试做了一个超级简单的验证码识别。 首先呢,要安装一个很重要的工具,tesseract(安装过程),然后安装pytesseract库,在cmd中输入pip install pytesseract即可,不建议安装tesserocr库,windows系统不太兼容,本人之前安...原创 2019-05-10 14:50:10 · 494 阅读 · 1 评论 -
安装tesseract的那些坑
最近准备试一下验证码识别,学习的时候发现还是要安装一下tesseract-OCR,来进行识别。研究半天,我这里说一下我自己的安装技巧d(`・∀・)b。(1)去官网(点击去官网)先下载任意版本,版本后面有dev或者beta的代表是测试版,不建议下载(如果没有梯子的,我这里上传到度盘了,你们可以自行下载,度盘连接,提取码:nw9s)(2)坑了我很久的地方(´゚д゚`):在下载安装包之后在勾选的...原创 2019-05-07 15:38:55 · 5440 阅读 · 15 评论