自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 Go and epoll

net包与epolllinux下go的网络包底层如tcp也是采用epoll来实现, 你可以从Accept方法一路追下去, 追到尽头你会看到internal/poll/fd_poll_runtime.go里面这些在runtime实现的方法:func runtime_pollServerInit()func runtime_pollOpen(fd uintptr) (uintptr, int)func runtime_pollClose(ctx uintptr)func runtime_pollW

2020-06-07 23:25:33 68

原创 简述OTP动态口令及其实现

背景最近用到了OTP, 遂mark一下OTP动态口令验证可以看作是服务端和客户端之间通过约定相同的算法来实现验证功能, 也即你在客户端看到的动态口令是客户端通过算法生成的无需请求服务端获取TOTP平时用的google动态口令用的就是TOTP(Time-based One-Time Password), TOTP基于HOTP, 所以弄懂TOTP即可原理: 假设用的是30秒间隔的六位口令, 精简版伪代码:// secret为密码, timestamp为时间戳, 返回口令GetOTPC

2020-06-06 13:23:44 167

原创 axios的ES module (esm)

背景刚好遇到某个场景需要用到es module, axios用习惯了, 不过axios官方没有esm版本 (https://github.com/axios/axios/issues/1879)解决可以用第三方: https://github.com/bundled-es-modules/axios使用起来很简单, 直接用里面的axios.js即可<!DOCTYPE html><html lang="en"><head> <meta c

2020-06-05 13:29:38 122

原创 Redis源码阅读之: 事件模型ae

源码文件src/ae.c入口函数src/ae.c下的void aeMain(aeEventLoop *eventLoop)函数; 推荐从这个函数开始阅读/* * 事件处理器的主循环 */void aeMain(aeEventLoop *eventLoop) { eventLoop->stop = 0; while (!eventLoop->stop...

2020-05-05 23:39:40 83

原创 Jetbrains Clion官方支持了Stm32的项目搭建, 说下感想

背景得知Clion 2019.1之后的版本官方直接支持Stm32项目的创建, 遂怀揣激动之心准备一试…吐槽照着别人的教程, 一顿操作猛如虎, 一会捣鼓OpenOCD, 一会捣鼓arm-none-eabi-gcc… …说实话, 过程挺麻烦的, 会遇到一些坑手头上只有一块老stm32的核心板还有一个Jlink, 烧写调试也只能靠Jlink. 结果捣鼓了老半天, Jlink这块没办法打通...

2020-05-05 21:52:06 462

原创 解决electron-vue下载资源慢的问题

建项目太慢时把electron-vue的代码下来丢项目里vue init ./electron-vue my-projectbuild太慢时npm config set registry https://registry.npm.taobao.org/npm config set ELECTRON_MIRROR http://npm.taobao.org/mirrors/electr...

2020-02-03 23:41:39 811

原创 Javascript的特殊Unicode字符

Unicode字符值转义序列含义\u0008\bBackspace\u0009\tTab\u000A\n换行\u000B\v垂直制表符\u000C\f换页\u000D\r回车\u0022"双引号\u0027’单引号\u005C\反斜杠\u00A0不间断空格\u2028行分隔...

2020-01-07 20:35:47 73

原创 markdown锚点跳转的坑

背景写markdown有这样的需求: 点击某个词跳转到markdown文章的某个位置(某个锚点), 但是写完发现有些点了跳不过去原因就是跳转锚点的格式没写对, 格式见下面锚点title需要注意的格式必须全小写空格用’-'代替'_'需要去掉错误例子[点我跳转1](/shuogg/article.html#如何取一个好的ID) [点我跳转2](/shuogg/article...

2019-11-13 20:45:20 680

原创 No module named 'numpy.core._multiarray_umath' && cannot import name '_validate_lengths

问题跑个pytorch一直在No module named 'numpy.core._multiarray_umath' 和ImportError: cannot import name '_validate_lengths两个错误反复横跳, 好气啊解决办法numpy和scikit-image都升到最新即解决pip install --upgrade scikit-imagepi...

2019-07-06 17:13:10 437

原创 Anaconda prompt: unknown encoding错误

编码问题坑爹的windows解决方法接在终端输入: set PYTHONIOENCODING=utf8但是下次重新打开还是得重复上述操作, 麻烦!

2019-06-27 22:17:14 272

原创 sublime在win10的输入法问题

现象win10自带输入法一直躲左上角解决下载sublime的插件IMESupport, 这个插件是改良版的, (不要在sublime里面直接install, 那个是未改良版, 装了也没效果), 下载完解压丢到sublime的Packages下就完事了...

2018-12-07 20:01:00 364

原创 手把手制作个划词翻译的IDEA插件

简介看这篇之前可以先看下IDEA插件制作(环境搭建demo篇)插件功能: 划词翻译使用方式: 选中单词后按ctrl+shift+alt+O后即弹出翻译效果如下源码源码仓库: https://gitee.com/shuogg/ShuoGG-IDEA-plugin/tree/master/SimpleDict插件工程目录工程相当简单, 代码也相当简单…代码分析a...

2018-10-26 16:16:40 503

原创 手把手制作一个简单的IDEA插件(环境搭建Demo篇)

新建IDEA插件File --> new --> Project--> Intellij PlatForm Plugin-->Next-->填好项目名OK编写插件新建工程后在src下建个java文件, 如下代码如下import com.intellij.openapi.actionSystem.AnAction;

2018-10-26 11:08:13 1881 2

原创 MarkDown图床助手: 截图-传图-生成url 一步到位

简介现在markdown越用越频繁了, md好用是好用, 但就是贴图片的时候有些麻烦: 要截图->上传图片->复制图片url, 于是做了个简单的工具: 截图->传图->生成图片url三合一, 三…三分之一倍的快乐呀!效果截图上传(也可以用快捷键ctrl+shift+alt+F8)上传后自动将图片url复制到剪贴板, 直接粘贴即可也可以选择图片上传...

2018-10-25 22:58:34 2399 3

原创 pyinstaller踩坑记录: 无法打包依赖了requests模块的应用(ImportError: No module named 'requests')

关于问题打包后运行直接报main return -1的错误, 打包成debug模式看了下日志是报了ImportError: No module named 'requests'的错误环境: win10+python34+pyinstaller3.0.0解决直接将pyinstaller升级到3.2.1即可pip install pyinstaller==3.2.1(据说将reque...

2018-10-17 19:31:45 3124 3

原创 idea中快速查看字节码

javap的参数 -help --help -? 输出此用法消息 -version 版本信息 -v -verbose 输出附加信息 -l 输出行号和本地变量表 -public 仅显示公共类和成员 -protected...

2018-08-14 10:56:47 2368 1

原创 Py小工具: 快速查询服务器日志+关键字高亮

背景最近在单核1G的乞丐版服务器上部署了个自己的后台应用玩玩,想顺便部署个SpringBoot-admin来查查日志啥的结果一部署上去服务器资源就不够用了,那咋整?不会每次想看日志都的SSH过去然后追到日志目录然后再去tail?想想就觉得麻烦!于是花了点时间做了个简单快捷查日志的小工具,顺便加了关键字高亮,这样日志看起来漂亮多了!效果实时查询日志, 服务器新产生的日志会立即打...

2018-08-05 23:41:53 506 1

原创 sql转Html图形化展示(Python实现)

简介每当在powerdesigner设计好表结构之后, 有时候需要和别人讨论下设计的情况, 但直接丢个.sql给其他人又不直观, 于是就做了个可以将sql转为Html表格, 主要是字段后面带了注释, 便于了解字段的意义, 简洁直观, 效果如下 源码: https://github.com/shuoGG1239/SqlToXXX 效果 分析先解析sql语句, 然后...

2018-08-02 10:44:52 1590

原创 快速生成JavaBean: .sql转JavaBean一步到位

简介我一般数据表结构是用PowerDesigner来建, 建完就需要建Model也即一堆javaBean, 如果没有辅助工具挨个建要累死, 于是用python写了这样一个辅助小工具, 仅需复制下PowerDesigner中Preview中的sql语句, 然后双击下工具就直接生成出所有数据表的javaBean了 源码: https://github.com/shuoGG1239/SqlTo...

2018-07-31 23:21:41 2354 1

原创 几行代码搞定AndroidManifest.xml的解析和安卓apk版本号获取

AndroidManifest的解析最近需要去拿apk的版本号, 所以得通过AndroidManifest.xml来获取版本号, 但这个xml文件是加密的得先解密才行, 于是随便找了个解密轮子封装了一遍 APIString parse(String fileUrl);String parse(InputStream in);String parse(byte[] in);...

2018-07-31 21:14:40 2410

原创 简单粗暴的实现图片转文字(OCR)

效果如下截图识别 图片识别 代码https://github.com/shuoGG1239/Image2Text介绍本来一开始是用谷歌的tesseract, 也搞来了据说比较靠谱的trainedData, 但实际识别准确率实在不行, 于是放弃了, 不过这种好处就是可以离线识图, 只要能搞到靠谱好用的trainedData肯定是比在线识图要好啦 这个小工具...

2018-07-21 10:53:59 11795

原创 Redis源码阅读之: 环境搭建及准备

1.下载源码redis源码仓库redis带中文注释源码仓库2.IDE配置(Clion on windows)ps:Clion特别适合看C代码, 而且跨平台直接进入clion打开redis源码的文件夹没mingw则安装下mingw, 我这边直接用Qt自带的配置ToolChains 源码根目录下新建个CMakeLists.txt, 内容如下cmake_minim...

2018-07-16 15:31:36 4904 3

原创 快速美化Qt应用--QCandyUi

QCandy-UI快速美化PyQt应用项目地址(欢迎star): https://github.com/shuoGG1239/QCandyUi使用方法pip install QCandyUi仅需在需要美化的窗口类上加上@colorful装饰器即可也可以调用CandyWindow.creatWindow()返回经美化的QWidget (推荐用这种)实例原味窗口...

2018-07-11 22:01:15 3782 3

原创 总结Pyinstaller的坑及终极解决方法

一. 首先要有个稳定环境下面是博主经测试的觉得坑比较少的环境搭配 Python3.4 + PyQt5.4 + Pyinstaller3.2.1Python3.5 + PyQt5.8 + Pyinstaller3.2.1 二. Pyinstaller遇到坑没必要换打包工具博主好几次用Pyinstaller遇到坑时都有考虑换工具如py2exe或cx-freeze之类的,...

2018-07-06 14:21:44 28517 13

原创 异常记录: Handler dispatch failed; nested exception is java.lang.NoSuchMethodError

NoSuchMethodErrororg.springframework.web.util.NestedServletException: Handler dispatch failed; nested exception is java.lang.NoSuchMethodError:造成这个错误的原因可能为: A-module的pom依赖了B-module和C-module, 然而B...

2018-06-19 09:59:49 78148

原创 Pygame用Pyinstaller打包后exe无法的问题

环境win7+py341. 双击exe出现pyi_rth_pkgres returned -1卸掉pyinstaller重新安装最新版2. 双击exe直接程序停止运行font的问题pygame.font.SysFont(None, 48) # 错误pygame.font.SysFont('arial', 48) # 正确...

2018-06-13 16:52:21 1276 1

原创 用Python剪辑制作简单视频(moviepy)

把玩了下moviepy蛮有意思的, 记录下来方便以后使用(ps: 其实直接看官网就可以无视该教程了: https://pypi.python.org/pypi/moviepy)1. 环境(1) pip install moviepy(2) 安装 ImageMagick, http://www.imagemagick.org/script/download.php如果是windows玩家直接在这里下...

2018-04-15 21:51:38 14806 9

原创 Pyinstaller打包错误: "main scrpt return -1"及PyQt打包问题

1. 关于"main scrpt return -1"我这边遇到的问题是import requests然后用Pyinstaller打包最后就会出现此问题, 在打包的时候加入参数:"--hidden-import=queue" 可以解决。示例:if __name__ == '__main__': from PyInstaller.__main__ import run opts=['...

2018-04-11 09:27:40 229

原创 Python3的opencv环境搭建简易教程

1.根据操作系统和py版本下载对应的whl包: https://www.lfd.uci.edu/~gohlke/pythonlibs/#opencv2.pip安装上述的包, 然后安装一下numpy;3.测试下代码:import cv2img = cv2.imread('123.jpg')cv2.namedWindow('image')cv2.imshow('image',

2018-01-21 12:29:17 673

原创 各版本Opencv对应的各版本Python安装包

各版本Opencv的对应的各版本Python安装包:https://www.lfd.uci.edu/~gohlke/pythonlibs/#opencv

2018-01-21 11:04:15 21123

原创 vscode设置备份

File-->Preferences-->Settings-->直接复制下面把右边的直接盖了OK{"workbench.colorTheme": "Default Light+","editor.minimap.enabled": false,"workbench.statusBar.visible": false,"workbench.activityBar.vi

2018-01-20 22:36:35 3235

原创 idea输出Jar简易教程

1. 按F12或F3进入Project Struct界面, 然后"Artifacts"-->"+"-->"JAR"-->"Empty", 会出现如下界面:2. 如上图所示, 先修改下Name, 然后双击右下边的"xxxx compile output", 变成如下:3. 设置完按OK回到编辑界面, 然后(菜单)"Build"-->"Build Artifacts..."

2018-01-15 18:06:47 165

转载 Java结构体: JavaStruct (实现类似C的结构体或python的struct.pack效果)

Javastruct 是什么简而言之,Javastruct 是一个第三方库,用于像处理 C 或者 C++ 结构体那样处理 java 对象。也即利用 Javastruct 可以在 java 上实现类似于结构体的功能和操作。Javastruct 的用途在 java 或者 Android 应用程序与一些嵌入式设备通讯或者C、C++ 应用程序通讯时,比如网络、无线、蓝牙、串口通讯等

2018-01-09 08:52:13 7325

原创 Electron打包总结, 附例子(windows+linux)

asar pack 文件夹路径 app.asarcnpm install electron -g// 装完electron后不要把zip删了cnpm run-script packageelectron-packager * location of project:项目所在路径 * name of project:打包的项目名字 * p

2017-09-17 21:44:56 8985 5

原创 Linux上JavaWeb环境搭建: JDK8 Tomcat Mysql Redis

今天在阿里云上搭建了下JavaWeb的环境, 顺便做个笔记, 环境是Ubuntu16.04;1. JDK8+Tomcat8:阿里云的帮助手册, 讲得够详细了, 一步一步照着做就没错的:点击打开链接2. MySql5.7安装:sudo apt-get updatesudo apt-get install mysql-server sudo

2017-09-05 20:17:16 337

原创 Python的KeyboardSwitch() missing 8解决方法

最近使用PyUserInput的KeyboardEvent的时候遇到了KeyboardSwitch() missing 8的情况;该问题具体表现在当你focus的那个进程的窗口title带中文, 就会出现上面那个错误, 如果都是英文或者其他ascii字符则不会;查了些资料了解到是PyHook在Python3的windows下的一个bug, 我把程序直接丢到linux跑确实就没有出现上面的那

2017-08-16 15:16:45 5025 1

原创 PyQt简单例子: 包括ui文件生成, 代码, 打包exe

本次要做一个简单的软件, 就是一简单的窗口, 然后往里面输入网址(网盘), 然后可以进行浏览器访问或复制链接, 就这么简单;0. 环境搭建前面教程有了, 就不重复了, 打开Pycharm;1. ui文件的生成。首先打开QtDesigner:把ui设计好, 然后保存, 即baidudisktool_ui.ui文件:2. 将baidudisktool_ui.ui文件转为baidudisktool_ui...

2017-08-05 01:50:59 12134 4

转载 PyQt5+python3+pycharm开发环境配置

1.下载PyQt官方网站:http://www.riverbankcomputing.com/software/pyqt/download5我的操作系统是64位的,安装的是Python3.4.3,所以我选择下载:PyQt5-5.4.1-gpl-Py3.4-Qt5.4.1-x64.exe如果还是不行可以在csdn资源下: http://download.csdn.net/detail/h...

2017-06-15 20:57:47 575

原创 关于ST-Link的internal command error问题的解决方法

调试stm32的停止模式的时候老遇到这个问题,据说是芯片进入休眠自锁状态,在网上查资料大概总结为2个方法:方法一:Options for target--->Debug--->右边的settings--->Debug分栏的Connect & Reset option, Nornal改为With pre-reset.效果: 有时候可以有时候不行.方法二:按住开

2016-12-29 12:04:15 33295 2

转载 UML类图几种关系总结

转载自:http://blog.csdn.net/tianhai110/article/details/6339565在UML类图中,常见的有以下几种关系:泛化(Generalization),  实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖(Dependency) 1.泛化(General

2016-11-23 20:54:36 215

提示
确定要删除当前文章?
取消 删除