- 博客(185)
- 资源 (24)
- 收藏
- 关注
原创 Krita+开源免费AI插件让绘画变得如此简单
本绘画工具完全开源免费,主体是Krita,可以看做一个简化版的PS,喜欢手绘的应该都知道,简洁好看又好用(自从用上了Krita,就再也没有打开过PS)。AI绘画部分通过插件实现,其实底层也是爆火的ComfyUI。通过这段时间的探索,发现主要有以下几个好用的功能。随机生成图片按照关键词生成图片按照手绘过程实时生成美化后的图片按照摆好的pose生成对应姿势的人物造型按照不同风格出图(写实、漫画、素描、手绘等)局部图像替换(比如,换脸、换发型、换装饰,或者把一座高山换成一片湖泊等)
2024-03-28 16:06:53 5878
原创 Packet content transfer stopped (received 8 bytes)
esp32烧录程序时报错:A fatal error occurred: Packet content transfer stopped (received 8 bytes)
2024-02-18 00:10:00 1315
原创 pyqt、pyside与QWebEngine前端js交互简单示例
说明本示例只需在同一文件夹创建三个文件,三个文件建好之后,运行main.py文件即可。本示例主要演示PyQt、PySide与QWebEngine前端JS交互功能。示例使用Pyside6,如果使用PyQt,Slot需要换成pyqtSlot.效果先看运行效果代码本示例需要在同一个文件夹下创建三个文件一、前端HTML文件index.html<!DOCTYPE html><html lang="en"><head> <meta chars
2022-05-04 16:32:18 5085 1
原创 python 获取浏览器安装位置,并使用指定浏览器打开指定网页
说明本程序基于Windows注册表实现了浏览器安装位置的查找功能和使用指定浏览器打开网页的功能。使用 get_browser_path 函数可获取对应名称的浏览器的安装位置,使用 open_url 函数可直接使用指定的浏览器打开对应页面,可同时指定多个浏览器,优先级从前到后。当前支持 ‘IE’,‘chrome’,‘edge’,‘firefox’,‘360’ 等浏览器,如果有其他浏览器需要支持,只需在 _browser_regs 中补充对应注册表信息即可"""使用 get_browser_path
2022-01-14 16:31:50 4131 2
原创 pyinstaller 打包 pyqt5 Could not find QtWebEngineProcess.exe
问题使用 pyinstaller 打包 pyqt5 应用的时候本来运行正常,但在中文路径下不能运行。然后,升级 pyinstaller 和 pyqt5 到最新版本,再次打包,结果英文路径也不行了,爆出 Could not find QtWebEngineProcess.exe 之后自动退出。解决方法很简单,只需要两步:找到应用程序打包输出的文件夹,复制输出文件夹下的 PyQt5/Qt/bin 目录中的 qt.conf 和 QtWebEngineProcess.exe 到跟输出的exe文件同级的
2021-05-03 13:45:14 2604 4
原创 Python子进程执行系统命令,并实时获取输出数据和返回结果
背景最近在用Python写一个小程序,需要调用系统命令,需要获取执行之后的返回结果。由于任务执行时间较长,为便于观测任务执行过程,需要实时打印执行过程中产生的数据。经过一番摸索,封装了个通用的工具包。代码easy_subprocess.py"""author: lixkdescription: 本工具包用于执行子进程,实时获取子进程执行过程中输出的数据并打印到控制台,然后返回状态码和执行结果"""import subprocessimport sysdef run(cmd, shel
2020-12-12 14:04:09 4052 4
原创 Python 解决cmd窗口鼠标点击后挂起不执行问题(禁止快速编辑模式)
问题用Python开发的无界面程序,执行过程在cmd黑窗口中打印信息时,有时,一不小心鼠标点到了黑窗口里,程序就挂起,不执行了,必须把焦点去除才能恢复执行,很是烦人。一番搜索之后找到个还算简单的解决方案,此处记下来,分享给有需要的小伙伴。解决方案把这几行代码加入到待执行程序中即可。import ctypeskernel32 = ctypes.windll.kernel32kernel32.SetConsoleMode(kernel32.GetStdHandle(-10), 128)想要详细
2020-10-29 19:52:10 3021
转载 Go 分布式锁实现(Redis,ZK,etcd)
6.2 分布式锁在单机程序并发或并行修改全局变量时,需要对修改行为加锁以创造临界区。为什么需要加锁呢?我们看看在不加锁的情况下并发计数会发生什么情况:package mainimport ( "sync")// 全局变量var counter intfunc main() { var wg sync.WaitGroup for i := 0; i < 1000; i++ { wg.Add(1) go func() {
2020-09-23 11:35:26 2639
原创 Python3 + Appium + 安卓模拟器 实现APP自动化测试,并生成测试报告(简化版)
背景在2018年的时候曾写过一篇自动化测试的文章,没想到这么受欢迎。原文地址:https://blog.csdn.net/u013314786/article/details/83216390在这一年多的时间里,挺多小伙伴看到了那篇文章,但是自己在操作过程中遇到了各式各样的问题,然后通过留言、私信、加QQ等方式联系我,而我又经常不在线,不能及时帮大家解决问题。所以抽空专门为想要入门自动化测试...
2020-04-26 17:53:50 11848 3
原创 Java优雅停止应用程序
import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;import java.util.concurrent.atomic.AtomicBoolean;/**优雅停止应用测试/public class ShutdownHookTest {/*是否停止应用标识*/p...
2020-04-14 19:23:39 439
原创 matplotlib设置窗体大小和标题
示例代码import matplotlib.pyplot as pltimport numpy as npfig = plt.figure(figsize=(6, 3))fig.canvas.set_window_title('I am title')x = np.linspace(0, 10, 100)plt.plot(x, np.sin(x))plt.show()效果...
2020-01-02 17:54:35 8750 1
原创 flask打包单一可执行程序,包含静态资源
flask示例代码import osimport sysfrom flask import Flask, render_templatefrom flask_cors import CORS# 获取资源路径def resource_path(relative_path): if hasattr(sys, '_MEIPASS'): return os.pat...
2019-12-23 10:49:09 2425 1
原创 pandas NaN转换为None
在python中,用pandas做数据处理非常方便。但是有时候从其他地方读取数据时,会有异常值需要处理。比如,我们要从excel读取数据然后调用接口写入数据库时,读取到的空值是NaN,但是,接口接收的对应单元格数据应该是None,这时候怎么处理呢?当然,用pandas做这个事也是非常容易的。示例如下:原始数据:示例代码:import pandas as pd ...
2019-11-18 10:25:58 19813 2
原创 Java创建GIF图,带透明背景
需求使用Java将序列图转换为GIF动图,如果序列图本身包含alpha透明通道,生成的GIF图也要保留透明通道。对于序列图转换为GIF动图的需求,如果数量比较大,对性能要求较高,建议直接使用对应的处理工具,比如ImageMagick, GraphicsMagick ,FFmpeg 等,不仅可以转换成GIF,还可以转换出压缩率更高的webp动图。但是吧,有时候只需要一个很小的功能,引入一个大块...
2019-10-19 17:54:37 1861 2
原创 gson序列化抛出StackOverflowError异常
问题描述使用gson库将实体对象序列化为json字符串时,出现StackOverflowError异常。如图:经过排查,发现问题出在循环依赖上。简化版示例代码如下public class A { private String name; private B b; public A(String name) { this.b = new B(this); this.name ...
2019-10-16 15:16:49 5163
原创 Linux通过SSH访问其它机器
Linux通过SSH访问其它机器一、生成密钥用root用户登录,cd切换到/root/.ssh目录,如果没有的话创建一下。执行命令ssh-keygen -t rsa,一直回车,直到密钥生成完成即可。可以看到在该目录下生成了id_rsa和id_rsa.pub两个文件,如图二、分发密钥要远程操作哪台机器,就把上边生成的公钥(id_rsa.pub文件)分发到对应的目标机器,分发过程如下。...
2019-09-30 18:29:50 2028
原创 图解Jenkins环境搭建+多机部署
概述本文操作基于Ubuntu系统,其它系统操作类似。本文目标:实现Ubuntu系统下,Jenkins环境的搭建和通过SSH方式的多机部署。安装安装JDKOracle JDK下载地址:https://www.oracle.com/technetwork/java/javase/downloads/index.html安装过程比较简单,此处从略。安装Jenkins1. 下载下载地址:...
2019-09-30 18:26:35 3300
原创 python监控文件/目录变化
python监控文件/目录变化的库有许多,试了一些,个人感觉watchdog挺好用,对文件的创建/修改/删除等都可以监控到,而且跨平台,用法也比较简单。代码示例import timefrom watchdog.events import *from watchdog.observers import Observerclass FileEventHandler(FileSystem...
2019-08-29 15:29:58 6511
原创 Java获取文件的真实类型(通过文件魔数判断文件类型)
背景通常情况下,我们取文件的后缀名作为文件的类型即可,但有时为了防止用户随便修改后缀名,就需要获取文件的真实类型。这时候可以通过文件的魔数来判别。魔数就是文件开头的那几个字节的数据。代码实现工具类代码import java.util.HashMap;import java.util.Map;/** * @author lixk * @description 魔数工具类 */p...
2019-06-20 17:48:21 10334
原创 Linux启动,重启,停止java服务shell脚本
代码脚本server.sh#!/bin/bashapp='xxxxxx.jar'args='-Xms2g -Xmx2g -Dspring.profiles.active=dev'cmd=$1pid=`ps -ef|grep java|grep $app|awk '{print $2}'`startup(){ nohup java -jar $args $app & ...
2019-06-14 20:10:53 11221 1
原创 python 发送邮件示例
这里以QQ邮箱为例,封装一个简单的发送邮件函数,支持普通文本和富文本以及附件发送功能。代码import osimport smtplibfrom email import encodersfrom email.header import Headerfrom email.mime.base import MIMEBasefrom email.mime.multipart import...
2019-06-02 17:21:00 467
原创 Spring Boot 全局排除 spring-boot-starter-logging 依赖
项目里使用了log4j2做日志处理,要排除掉Spring Boot 很多jar里边默认依赖的日志包spring-boot-starter-logging。一个一个写依赖排除也可以,但是太繁琐了,经过尝试,只让它依赖个spring-boot-starter-logging的空壳,里边的东西全部排除掉即可。使用下边的方式就可以达到想要的效果。 <!--全局排除spring-boo...
2019-05-21 18:38:30 14619
原创 Java 执行系统命令
有时候我们需要调用系统命令做一些事情,比如,执行cmd/shell命令,调用其他第三方程序等,Java已经提供了这样的功能,但是感觉不是太好用,没有python的subprocess简洁。最近要用Java调用 ffmpeg 做一些音视频处理,封装个简单的进程工具类,这里记录下。import java.io.Closeable;import java.io.IOException;impor...
2019-05-05 19:11:58 2463 2
原创 CentOS 、Ubuntu安装ffmpeg(超简单,只需两步)
背景之前在CentOS7上按照网上的教程安装/编译,倒腾了老半天,总是失败,好不容易成功了,发现是2点几的版本,有些命令不能用啊。在官网上仔细看了下,安装其实挺简单的,直接用构建好的即可。下边记录下操作步骤。ffmpeg安装步骤1. 下载打开官网地址,进入下载页:https://ffmpeg.org/download.html#build-linux选择Linux Static Bui...
2019-04-29 20:58:35 43747 21
原创 Spring Boot打包跳过单元测试
在Spring Boot中打包时跳过单元测试其实很简单,只要在pom文件的properties标签中配置<skipTests>true</skipTests>即可,示例: <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> ...
2019-04-23 09:51:35 2753 2
原创 java.lang.NoSuchMethodError: org.json.JSONArray.iterator()Ljava/util/Iterator
背景使用阿里云服务出现这个异常:java.lang.NoSuchMethodError: org.json.JSONArray.iterator()Ljava/util/Iterator...解决方案pom依赖中,去除jsonassert,示例: <dependency> <groupId>org.springframework.boot</group...
2019-04-19 19:49:11 3446 2
原创 Spring Boot集成Log4j2+颜色设置+按时间拆分
前言Log4j 2是Log4j的升级版属于新一代日志框架,它基于LMAX公司开发的Disruptor(一个开源的无锁并发框架),改善了Log4j和Logback在架构设计方面的缺陷,具有超高的吞吐量和低延迟,性能比Log4j1.x和Logback高10倍以上。 另外,它还支持自定义日志的输出方式,比如,将文件以json格式输出,支持输出到socket或者kafka等。这么好的东西,当然要赶紧用...
2019-04-13 12:09:09 6366 4
原创 Spring Boot添加自定义yml文件配置
背景项目当中有大量配置,统一放在application.yml中管理不太方便,所以需要将配置拆分,放在几个不同的yml文件中。解决方案解决方案很简单,只需要如下几步操作即可。在application.yml文件同目录创建其他配置文件,比如:application-user-config.yml, application-order-config.yml…内容示例:user: c...
2019-02-27 15:35:20 7012 6
原创 Spring MVC 自定义返回异常
项目微服务接口决定全部返回固定格式的数据,包括异常在内,该怎么处理?默认的,Spring MVC在抛出异常后会返回给调用方一段异常信息,那么怎么让接口调用异常的时候返回自定义的信息呢?其实很简单,直接上代码。首先创建一个异常处理器:import org.springframework.web.bind.annotation.ExceptionHandler;import org.spri...
2019-02-13 11:08:40 793
原创 POST 下载文件
需求背景这段时间遇到个需求,需要根据用户输入的id列表下载文件。一般情况下,下载文件用GET请求就能满足需求,但是,这个需求参数中可能有上千个id,GET请求很可能超出浏览器参数长度限制。那么该怎么解决这个问题呢?解决方案请求方式基本可以确定只能用POST了,而直接用Ajax发POST请求是不行的。经过一番调研,总结两种方案:可以后台接到请求后生成下载文件,放到静态文件目录,然后返回文件...
2018-12-28 13:43:59 3592 1
原创 Nginx解决跨域,session,cookie无效
问题背景这两天遇到一个这样的需求:有两个项目a和b,在a项目中有页面需要调用b中的接口,两项目的域名不同分别为a.com, b.com。这时候如果直接调用,显然跨域了。一番折腾之后,问题解决了,这里记录一下解决方法。解决方法第一步,解决跨域这个使用Nginx的代理功能即可,在a服务器的Nginx添加如下示例配置:location ~ /xxx/ {proxy_pass ...
2018-11-28 14:59:33 26911 2
原创 HTML5桌面应用程序开发
前端时间要写一个桌面软件,比来比去没有满意的,要么不好看,要么不好用,要么打包体积太大。所以就有了这个小项目——easy-window。easy-window是什么?easy-window 是一个旨在简化桌面开发难度的通用窗体,它可以让你使用当前主流的HTML5技术快速地创建Windows桌面应用程序。创作桌面应用,不需要掌握QT,C++,C#,Java那些繁琐的东西,只要会创建网页就可以。同...
2018-10-22 20:27:27 47547 7
原创 Python3 + Appium + 安卓模拟器 实现APP自动化测试,并生成测试报告
概述本文主要分为以下几个部分安装Python3安装Python3的Appium库安装Android SDK安装JDK安装Appium安装模拟器编写测试脚本并生成测试报告正文一、安装Python3直接登录Python官网https://www.python.org/,下载最新版本即可。然后安装的时候注意一下安装路径,比如我的安装路径D:\Python37,接下来会用到这...
2018-10-20 20:04:52 122763 47
原创 python 获取本机IP地址,检测端口是否被占用
import socketdef get_host_ip(): """ get host ip address 获取本机IP地址 :return: """ s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) try: s.connect(('8.8.8.8', 80...
2018-10-17 12:21:15 5398
原创 Java 解析url,获取参数
一个简单的解析url,获取参数的Java工具类import java.util.HashMap;import java.util.Map;/** * @author lixk * @description url工具类 * @date 2018/9/26 9:58 */public class UrlUtil { public static class UrlEntity {...
2018-09-26 11:55:28 48474 4
原创 python 日志处理
平时做数据处理基本离不了日志记录功能。每次都配置一堆挺烦人,索性封装个模块,这里记录一下,与大家共享。 本日志模块目前只有一个方法getLogger,其他配置项通过参数传递,包括日志文件名,等级,日志文件划分方式,日志清除配置,日志格式等。 logger.pyimport loggingfrom logging import handlers# 日志级别字典__level_dict...
2018-09-06 17:13:30 723
原创 C extension: No module named pandas. libs. tslibs timedeltas
问题描述 C extension: No module named pandas. libs. tslibs timedeltas No module named ‘pandas._libs.tslibs.nattype使用pyinstaller打包pandas程序的时候遇到了这个问题。打包过程没有问题,运行打包好的程序就抛出这个关键异常提示。原因是打包的时候少了依赖包。...
2018-08-23 20:08:10 6059 1
Java 动态定时器
2017-08-30
UML建模工具 Umlet
2016-05-14
FileUtils java web 文件上传下载工具
2015-11-08
oCam(超好用的录像机)
2015-06-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人