自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 资源 (4)
  • 问答 (1)
  • 收藏
  • 关注

原创 python 爬虫 bs4解析示例

爬取的是某图片网站,这个网站的特点是图片地址就在网页源代码中,当前只是爬取第一页内容并下载。学习参考网址是https://www.tupianzj.com/bizhi/weimei/随着时间的变化,可能这个网页的html代码也会改变,如果不能达到预期效果,根据html代码修改。# coding=utf-8# http://www.xinfadi.com.cn/priceDetail.html# 1.拿到源代码# 2.使用bs4进行解析,拿到数据import requestsimport tim

2021-10-04 09:24:02 516

原创 pycharm添加pip指令安装库的方法

我们在cmd命令窗口通过pip指令安装的python第三方库,在使用pycharm的时候并不能直接使用,需要通过配置与python3.8的外部库相连接。1.file–>setting2.project–>Project Interpreter选择python.exe的路径,一般在python3.x文件夹下3.添加python.exe的路径如果没有类似python3.8/python.exe的选项,就点击右侧的设置按钮添加然后点击OK就会出现如下通过pip指令安装的所有第三方库,

2021-10-01 13:17:14 18130

原创 python正则表达式的几个匹配函数用法

1.finditer匹配字符串中所有符合正则的内容,返回的是迭代器,从迭代器拿内容需要用到.group()it = re.finditer(r"匹配条件","需要匹配的字符串")for i in it: print(i.group())简单地介绍一下finditer的返回是一个迭代器对象,这个东西具有是一次性的性质,也就是说从头到尾只能访问一次,且不可悔棋!如果后续需要多次访问它指向的数据,那么在第一次访问的时候就要把它里面的数据另存。2.findall匹配字符串中所有符合正则的内容,

2021-09-25 23:11:34 1034 1

原创 python正则获取豆瓣排行250

1.添加请求头,防止被拦截dic = { "User-Agent" : "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472. 106 Safari/537.36"}2.预编译正则表达式,用于过滤无用信息# cinema_name:电影名;Release_date:上映日期;# grade:评分 ;Evaluation_numb

2021-09-12 21:46:59 248 1

原创 python读写html文件乱码问题

#从网址库找到request库,使用urlopen函数打开网址from urllib.request import urlopen url = "http://www.mouwangzhi.com"resp = urlopen(url)with open("mybaiodu.html",mode = "w",encoding="utf-8") as f: f.write(resp.read().decode())print("over!")pycharm读取保存的html文件会显.

2021-08-22 10:46:19 5315 8

原创 python安装库指令

python -m pip list 查看已安装pip列表和版本python -m pip install 安装pippython -m pip install --upgrade pip 更新pippython -m pip install matplotlib 安装模块如果出错找到报错位置,删除文件夹(出错会显示文件路径)...

2021-04-28 10:01:00 507

原创 Python返回参数给C++

Python嵌入C++,C++如何获取Python的参数本文参考于用C或C++扩展Python开发手册1.应用场景:当我们使用编程借用Python计算,将计算结果返回给C++的时候,我们可以使用此方法将Python参数返回给C++2.函数原理:PyArg_ParseTuple()函数声明如下:int PyArg_ParseTuple(PyObject *arg, const char *format, ...);所述ARG参数必须是包含在Python传递给C函数的参数列表的元组对象。该格

2021-04-20 11:04:31 493

原创 无法打开XXX\corecrt_io.h文件

出现这种情况的原因我所知道的可能有两个1.没有权限2.文件损坏1.没有权限根据报错路径找到这个文件,点击属性修改权限2.文件损坏首先我们要了解一下这个是什么文件Windows下C++遍历文件夹中的文件如果只看原因的话看开头就可以了。文件的原因是需要C++对文件进行操作,corecrt_io.h文件包含了对文件操作的函数和结构体。这个文件是vs安装配置的,损坏了我们可以对vs进行修复即可。当然也可以复制安装了vs编译软件的朋友的corecrt_io.h文件覆盖掉错误的文件。3.损坏原因我

2021-04-12 14:37:53 1007

原创 Qt中C++引用python文件和函数(联合编程)

文章内容1.C++引用python文件环境配置2.C++调用python文件和函数3.C++获取python函数返回值4.C++与python数据互交引言:qt中C++和python联合编程以C++为主,C++调用python文件和函数1.C++引用python文件环境配置安装Qt和python,记录好python的安装位置,配置文件地址,编写程序的时候需要用到库文件在Qt程序配置文件.pro中添加python外部库文件INCLUDEPATH += D:/pycharm/Python/Py

2021-03-23 22:46:36 773

原创 python Qt第一个程序(pycharm)

python qt的ui界面可以使用QtCreator来编辑,然后生成py文件如下图生成的py文件直接run是没有反应的。因为pyqt5只是帮你把ui界面转化为py代码,但是没有有帮你去调用它。直白的来说就是将你设计的ui界面转化为一个类,但是这个类并没有被调用,所以我们要手写代码去调用它。一般来说,我们都喜欢把界面与逻辑分离:就是ui界面代码和功能函数分开,放在两个文件里面,ui界面代码放在界面.py文件里,功能代码放在功能.py里。所以我们要新建一个文件去调用界面pxjc是生成的界面py,我新建

2021-02-09 15:30:49 583

原创 C++套接字函数

Winsocket套接字#include "winsock2.h" //引用头文件#pragma comment(lib,"ws2_32.lib") //链接库文件WSDATA wsd; //定义WSADATA对象

2021-01-06 09:00:29 289

原创 Qt该字符集在源字符集中无效

报问题如下:虽然不是错误,编译可以通过,但是警告出现数十万次,会相当的耗费编译时间,所以还是很有必要解决一下这些警告。本人使用的是QCreator,网上给的解决办法都是用vs解决的,我一脸蒙蔽,get不到重点。某天早上恍然醒悟,大呼妙哉!解决过程如下:1.2.3.如果没有高级保存选项请参考:https://blog.csdn.net/u014779536/article/details/1070224924.然后选择utf-8.到此再返回Qt,选择自动弹出对话框的Yes to

2020-12-25 09:05:25 2505 1

原创 QT程序异常结束问题分析

Qt程序异常结束分为1.运行中异常结束运行中异常结束往往就是程序卡死,长时间无法响应,或者响应一段时间后异常结束。长时间无法响应就要看看程序是否进入了死循环或者是交长的循环,如果是比较耗时的处理可以放在线程中进行处理,避免等待处理时间过长无法响应。响应一段时间异常结束很大的可能就是内存泄漏的情况,首先检查一下指针是否只定义了却没有没有初始化,直接使用了,导致使用的指针根本没有东西,所以程序崩溃。2.启动异常结束启动异常结束就是还没开始就已经结束了。。。这个部分主要是与动态链接库有关,不妨先认识

2020-12-21 14:42:32 18105 6

原创 QPixmap保存图片

这是一个简单的例子,将QPixmap对象保存为png或者jpg等格式的图片函数原型:使用指定的图像文件格式(format )和质量因数(quality )以给定的文件名(fileName)保存像素图到文件中。如果成功返回true;否则返回false。质量因子必须在[0,100]或1的范围内。指定0来获得小的压缩文件,100用于获得大的未压缩文件,-1用于使用默认设置bool QPixmap::save(const QString &fileName, const char *format =

2020-12-12 10:07:16 9031

原创 opencv轮廓及轮廓中心提取

1.打开图片IplImage *src = cvLoadImage(图片路径,0);//opencv读取灰度图2.创建一个新的图片容器用于转换存取转换后的图片,宽度,大小需要与原图片一致IplImage *desc;CvSize sz;//图像大小if(src){ sz.width = src->width*1; sz.height = src->height*1; desc = cvCreateImage(sz,src->depth,src->

2020-12-10 15:11:47 5405 5

原创 opencv图片转换(Mat、QImage、IplImage)

IplImage 转 Mat:IplImage *img=cvLoadImage(argv[1]);Mat image=cvarrToMat(img); Mat 转 IplImage :Mat image =imread(argv[1],1); IplImage test = IplImage(image);打开Mat图片:image =imread(argv[1],1);打开IplImage 图片:img=cvLoadImage(argv[1]); Mat转QImage:彩色图

2020-12-09 16:53:35 2093 1

转载 九点标定

本文适用于初学者。 首先对概念要清晰:九点标定是点的仿射变换,只是图像行列、和坐标XY的仿射关系,也就是矩阵关系。从只有XY2个坐标轴来看,只有二个方向,所以只能适用于2D。下面具体流程: 第一步:制作9个点,相机采图的时候能全部拍到即可。一般以会3X3的行列相等去制作。 1.在图像上找到9个圆的中心坐标。(二值化提取区域后排序获得区域行列坐标/使用模板匹配后排序获得行列坐标) 2.会用到的一些算子: r...

2020-12-08 10:01:23 10841 3

原创 Qt串口通信简单编程步骤(QSerialPort)

Qt有自带的串口通信类QSerialPort:提供访问串口的功能。您可以使用QSeralPortinfo助手类获得关于可用串行端口的信息,该帮助程序允许枚举系统中的所有端口。有助于获得您想要使用的串行端口的正确名称。您可以将助手类的对象作为参数传递给setPort()或setPortName()方法,以分配所需的串行设备。在设置端口之后,您可以使用open()方法以只读(r/o)、只写(w/o)或读写(r/w)模式打开它。注意:串行端口总是以独占访问的方式打开(也就是说,没有其他进程或线程可以访问已经打

2020-12-01 16:56:00 7752 1

原创 C++客户端Modbus通信(TCP主站)

本文简单介绍Qt使用外部modbus通信C++编程流程modbus中文手册:https://blog.csdn.net/qq_23670601/article/details/82155378Qtmodbus较为方便,建议无特殊情况可以使用qtmodbus,为何不使用Qt自带QModbus呢?原因是我在编写modbus主站的时候需要创建一个线程监听从站的数据,创建线程的时候出现为不同线程的父线程创建子线程的报错,个人解决不了。modbus通信编程流程1.搭建modbus环境在pro工程项目中添加头

2020-11-30 20:48:20 7606

原创 Qt类型重定义:不同的链接

Qt构建程序时出现如下报错,有很多,大概是成百上千的报错头文件重定义。这个就要说到另一个博客了

2020-11-30 16:41:01 1402

原创 QT自动捕捉鼠标位置

Qt自动捕捉光标位置所知道的有两种情况:1.主窗体或主窗体的某一部件捕捉鼠标位置mouseTracking(bool):此属性保存是否为小部件启用鼠标跟踪,如果禁用了鼠标跟踪(默认),那么小部件只在移动鼠标时按下至少一个鼠标按钮时接收鼠标移动事件。如果启用了鼠标跟踪,即使没有按下按钮访问功能,小部件也会接收鼠标移动事件bool hasMouseTracking()。给ui界面的graphicsView部件添加自动捕捉鼠标:ui->graphicsView->setMouseTracki

2020-11-24 14:07:28 4149 1

原创 Qt不同类之间槽函数连接

Qt的槽函数消息传递机制不仅适合在同一个类中使用 ,同时也可以在不同类之间进行消息传递。信号槽在不同类之间进行消息传递步骤如下:假如B类向A类传递信号1.首先在B类中必须继承QObject类,并且包含#include头文件。如果B类已经继承了其他类,那就让B类多继承。例如:ImageWidget类继承QObject和QGraphicsItem两个类(QObject一定要放在前面)class ImageWidget :public QObject,public QGraphicsItem{ Q

2020-11-23 19:27:47 8290 2

原创 QT创建C++Thread线程

除了使用QThread创建线程之外,还可以使用C++thread创建线程。1.首先在qt的.h文件中包含线程头文件#include <thread>2.创建线程执行函数void MainWindow::thread1(){ while(1) { }}3.创建线程对象,执行自定义线程函数std::thread th1(&MainWindow::thread1,this);4.分离线程对象,使之独自运行th1.detach();...

2020-11-23 15:46:42 1368 1

原创 Qt QGraphicsView显示图片

Qt显示图片我所知道的有三种方式1.QLabel显示图片使用手动添加的ui控件QLabel显示图片。这种方式把图片显示出来,放大缩小等操作并不是很方便。QImage *image = new QImage;image->load(图片路径);//QString类型的路径ui->label_2->setPixmap(QPixmap::fromImage(image).scaled(ui->label_2->size()));2.QGraphicsView显示图片我

2020-11-19 09:18:15 31592 7

原创 关于Qt显示汉字乱码的问题

关于Qt乱码的问题我所遇到的大致有如下几个1.界面控件显示乱码2.打开文本乱码3.接收信息乱码4.控制台输出乱码5.打开文件注释乱码1.乱码的原因这个博客解释的很详细,也有很多例子去区分:https://www.cnblogs.com/lsgxeva/p/12161743.html2.过去乱码万金油过去解决乱码的方式是直接素质三连QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8")); QTextCodec

2020-11-09 20:18:18 2376 1

原创 Qt Tcp通信服务端+客户端

代码我已经上传了,不需要积分,有两套,一套是服务端客户端结合成一个软件,一套是服务端客户端分开的(代码简洁明了,用于速成)1.环境配置Qt自带tcp通信,不需要引入外部库,直接在工程文件加入network就可以了QT += core gui network加入头文件,因为是服务端客户端共用,所以都加上,QTcpServer套接字服务端专用,用于监听客户端发来的连接请求。QTcpSocket服务端客户端共用,用于数据的通信#include <QTcpServer>//监听套

2020-11-09 19:51:13 2033

原创 Qt海康相机简单拍照功能(IP)

Qt海康相机开发拍照功能直接上图:功能很简单,只有拍照一个功能,不涉及线程,图片显示是使用label显示的。代码整体直接借用海康给的.c开发手册,并没有太多的改动,主要是增加了ip匹配。开发手册的注释有点少得可怜,所以我把注释加上去了。工程文件pro自己添加吧INCLUDEPATH += C:/MVS/Development/IncludesLIBS += -LC:/MVS/Development/Libraries/win64\ -lMvCameraControl

2020-11-09 10:31:04 1086 1

原创 Qt工业相机头文件报错缺少类型说明符

Qt工业相机头文件报错缺少类型说明符我用的是MinVision的工业相机,开发的时候引入厂家头文件的时候报如下错误。解决方法:在.h文件中加入头文件#include<Windows.h>

2020-11-04 16:02:02 748

corecrt_io.h

用于替换掉坏的corecrt_io.h文件

2021-04-12

Qt 开发之Modbus通信

简单的Modbus通信,主要是用于简单了解Modbus通信的编程流程,以及Modbus通信signed和long DC BA通信数据的转化原理,内含源码,操作手册,应用程序。如有错误或者不到指出,包括注释理解的缺陷,请联系我指正,谢谢!

2020-11-09

Qt Tcp通信 客户端服务端共用

QtTcp/ip通信,比较简单,只有传输文本功能,服务端和客户端我合成了一个软件,各模块功能分工明确,可以进行参考。代码有什么问题,或者注释有什么不对的地方请联系我指出错误,谢谢!

2020-11-09

Qt编写Windows记事本

基于Windows系统的Qt记事本,具有增删改查等功能,可以实现拖拽打开文件,编写及显示汉字,解决了汉字乱码的问题。内含源码、操作手册、应用程序,本人原创,如有错误,请留言指出,谢谢!

2020-11-09

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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