- 博客(54)
- 收藏
- 关注
原创 ToDoApp
import sys# 定义一个自定义信号# 创建一个按钮# 设置布局# 连接自定义信号到槽"""发射自定义信号"""")"""处理自定义信号"""
2025-04-12 12:13:49
645
原创 pyqt写一个待办程序
import sys# 定义一个自定义信号# 创建一个按钮# 设置布局# 连接自定义信号到槽"""发射自定义信号"""")"""处理自定义信号"""在Python中自定义排序规则,你可以使用内置的sorted()函数或者列表对象的sort()方法,并通过key参数指定一个函数来定义排序规则。这个函数会对每个元素进行处理,并返回一个值,排序将根据这个返回值进行。按字符串长度排序。
2025-02-16 22:45:56
850
原创 Django 和 Vue3 前后端分离开发笔记
CORS 问题通常是由于服务器端没有正确设置头导致的。你可以通过在服务器端设置 CORS 头或在开发环境中使用代理来解决这个问题。如果问题仍然存在,建议检查 URL 的合法性和网络连接,适当重试请求。
2025-01-15 20:40:11
1392
原创 Http协议封装
这个函数是POSIX标准的一部分,用于根据IP地址查找对应的主机名。:将IPv4地址的网络字节序二进制形式转换为点分十进制的字符串表示形式。在Linux系统中,将IP地址转换成域名(即反向DNS解析)可以使用。函数用于通过域名或主机名获取其对应的IP地址信息。结构体的指针,该结构体包含了主机的相关信息。
2025-01-09 21:02:40
610
原创 C++网络程序设计
在C++网络编程中,使用是一种常见的方法来实现跨平台的TCP通信。最初是在UNIX系统上开发的,但它已经被广泛移植到其他操作系统,包括Windows。
2025-01-07 13:25:08
628
原创 08 Django - Django媒体文件&静态文件&文件上传
文件多选 -> multiple。, 就是指定文件上传的路径选项。在settings中配置。应用下的static。
2024-12-25 16:56:12
867
原创 07 - Django的会话技术
客户端请求服务器,如果服务器需要记录该用户状态,就使用response向客户端浏览器颁发一个Cookie。服务器检查该Cookie,以此来辨认用户状态。 理论上,一个用户的所有请求操作都应该属于同一个会话,而另一个用户的所有请求操作则应该属于另一个会话,二者不能混淆。一旦数据交换完毕,客户端与服务器端的连接就会关闭,再次交换数据需要建立新的连接。cookie本身由服务器生成,通过Response将cookie写到浏览器上,下一次访问,浏览器会根据不同的规则携带cookie过来。
2024-12-25 00:45:00
1164
原创 06 - Django 视图view
服务器在接收到Http请求后,会根据报文创建HttpRequest对象。视图中的第一个参数就是HttpRequest对象。视图的本质就是一个Python中的函数。视图的响应分为两大类。
2024-12-24 17:36:41
727
原创 05 Django模型进阶
外键关系中,django自动给usertype加了一个叫做userinfo的属性。不使用外键时用户类型存储在每一行数据中。如使用外键则只需要存储关联表的id即可,能够节省大量的存储空间。delete()方法, 和一对多类似,删除user或group会级联删除user_groups表中的关联数据。删除操作可以在定义外键关系的时候,通过on_delete参数来配置删除时做的操作。有一个用户信息表,其中有个用户类型字段,存储用户的用户类型。一对一不是数据库的一个连表操作,而是Django独有的一个连表操作。
2024-12-20 03:15:00
864
原创 03_Django视图
讲过的一个模板引擎,是模仿Django默认模板引擎基础上开发的,比Django模板引擎性能更好,功能更全.注意: 这只是一个简单的Jinja2模板语法示例,要使用更多语法,可以查阅以下资料。模板中的动态代码段除了做基本的静态填充,还可以实现一些基本的运算,转换和逻辑。在Django框架中,模板是可以帮助开发者快速生成呈现给用户页面的工具。,VT有着N:M的关系,一个V可以调用任意T,一个T可以供任意V使用。模板语言,动态插入的代码段(挖坑,填坑) {{ name }}静态页面: 页面数据是本地固定的。
2024-12-02 00:01:29
833
原创 JavaFx -- chapter09(网络扫描程序)
:学会基本的网络扫描程序设计技术。目标主机扫描是网络功防的基础和前提,扫描探测一台目标主机包括:确定该目标主机是否活动、目标主机的操作系统、正在使用哪些端口、对外提供了哪些服务、相关服务的软件版本等等,对这些内容的探测就是为了"对症下药",为攻防提供参考信息。对主机的探测工具非常多,比如大名鼎鼎的nmap、netcat、superscan, 以及国内的x-scanner等等。我们自己动手做简单扫描软件或工具,用于加深对网络编程的理解。知识点通过指定的IP地址范围,发现该范围中活跃的主机,例如指定 范围。新
2024-11-30 18:33:07
1100
原创 02_Django路由Router
在实际开发过程中,一个Django 项目会包含很多的 app ,这时候如果我们只在主路由里进行配置就会显得杂乱无章,所以通常会在每个 app 里,创建。是一个非常重要的功能,它可以让我们在代码中使用路由别名替代URL路径,在修改URL时避免代码中的硬编码依赖,同时也可以提高可读性和可维护性。,然后从根路由出发,将 app 所属的 url 请求,全部转发到相应的 urls.py 模块中。而这个从主路由转发到各个应用路由的过程叫做。在视图函数中,可以重定向到别的网页或者路径。的子路由中新增以下路由规则。
2024-11-29 14:22:36
949
原创 01.Django快速入门
在models.py中引入models创建自己的模型类,但切记要继承自 models.Model案例驱动: 使用模型定义班级,并在模板上显示班级列表修改__str__函数是用于规定打印输出时转换成什么字符串)# 模型 数据库表 相对应# 模型类属性 数据库表字段 相对应# 模型类实例 数据库表记录 相对应# 模型类方法 数据库表记录 相对应。
2024-11-23 20:55:24
1305
原创 python中的import
相对导入只能在 package 里面的 module 中使用,相对导入其实就是根据 package 变量来转换成绝对路径,然后再导入模块或者包.
2024-11-22 14:58:23
800
原创 JavaFx -- chapter8(邮件发送程序)
尽管Base64编码有许多优点,但它也有缺点,比如编码后的数据体积会增加约33%,因此在需要传输大量数据时可能会影响效率。例如,语法错误提示信息、邮件服务器的。:Base64编码可以将二进制数据转换为纯文本格式,这样就可以在只支持文本传输的系统中传输二进制数据,例如电子邮件、网页等。:在网络协议中,如HTTP,Base64编码常用于传输非ASCII数据,例如在HTTP响应头中传输图片或文件。// 接收方的邮箱,尖括号中暂时填写和上面一样的邮箱地址,即自己发送邮件给自己,验证是否成功。
2024-11-20 15:10:57
878
原创 Qt邮箱程序改良版(信号和槽)
在Qt中,与GUI相关的操作,包括网络操作,通常需要在主线程中进行,因为Qt的GUI不是线程安全的。:如果你使用的是QTcpSocket等网络类,可以考虑使用Qt自己的网络线程,例如通过QNetworkAccessManager来处理网络请求。来在后台线程中运行网络操作,这是不正确的,因为Qt的网络类(如QTcpSocket)不是线程安全的。:创建一个新的QThread,并将网络操作的QObject移动到这个新线程中。要解决这个问题,你需要确保所有的网络操作都在主线程中进行。在你的代码中,你使用了。
2024-11-18 13:38:59
913
原创 jQuery笔记
仓库: 可以把很多东西放到这个仓库里面。找东西只需要到仓库里面查找到就可以了JavaScript库:即library,是一个封装好的特定的集合(方法和函数)。从封装一大堆函数的角度理解库,就是在这个库中,封装了很多预先定义好的函数在里面,比如动画animate、hide、show,比如获取元素等比如jQuery,就是为了快速方便的操作DOM,里面基本都是函数(方法)。语法参数params😗*想要更改的样式属性,以对象形式传递,必须写。属性名可以不用带引号,如果是复合属性则需要采取驼峰命名法。
2024-11-11 15:15:24
483
原创 QT版发送邮件程序
Q_OBJECTpublic:signals:// 自定义信号首先,在你的窗口类或任何适当的类中定义一个信号,用于传递数据到GUI线程。
2024-11-09 22:52:04
2451
原创 JavaFX -- chapter07(HTTP程序设计)
HTTP 系统包括客户端软件(浏览器)和服务器软件(HTTP服务器)。早期的客户端软件,其主要工作可理解为文件下载和文件显示。实际上现代的HTTP客户端比文件下载要复杂得多,它包括网页文件的下载、跨平台的本地显示,参数的传递,动态网页的实现,以及交互等功能。客户端软件(web浏览器软件如Edge浏览器、360浏览器);服务器软件(web服务器软件如IIS、Nginx、Tomcat等)。客户端软件和服务器建立连接(TCP的三次握手);发送HTTP头格式协议;接收网页文件;显示网页。
2024-11-07 15:19:44
894
原创 JavaFx -- chapter06(UDPSocket)
UDP通信没有客户套接字 (Socket用于通信) 和服务器套接字 (。UDP套接字的角色类似于邮箱,可以从不同地址接收邮件,并向不同地址发送信息。UDP编程不严格区分服务端和客户端,通常将固定IP和固定端口的机器视为服务器。TCP发送数据是基于字节流的,而UDP发送数据是基于报文。网络中传递的UDP数据都封装在自包含(self-contained)的报文中。类似TCP服务器,UDP服务器的工作是建立一个通信终端,并被动等待客户端发起连接。
2024-11-04 12:45:52
490
原创 JavaFx -- chapter05(多用户服务器)
前面提到OOM的问题,如果能提供自行确定最小值和最大值的动态调整的线程池会更满足要求,大家跟踪方法,观察其源代码,会发现非常简单,而且也会明白为什么会出现OOM错误(Out of Memory内存溢出)大家可以尝试将其实现代码拷贝出来稍作修改,封装一个自己版本的 myCachedThreadPool 方法来使用。
2024-10-27 21:01:25
1130
原创 JavaFx -- chapter04(网络文件传输)
客户端代码可能没有正确处理从服务器接收到的数据,例如,如果服务器发送的数据超过了缓冲区的大小,可能会导致问题。:如果客户端读取到非预期的数据,如空数据或持续的心跳包,它可能会一直读取而不退出。是一个将字节流转换成字符流的桥梁,它使用指定的字符集将字节数据解码为字符数据。的输出流),这样客户端在读取完数据后会得到一个 -1,表示连接已经关闭。:如果在读取过程中发生异常,并且没有正确处理,可能会导致循环无法退出。对象的类,它提供了一个缓冲区,可以提高读取文本数据的效率。是一个方便的类,用于向流写入字符数据。
2024-10-24 21:44:17
1086
原创 JavaFx -- chapter03(多线程网络通信)
避免长时间运行的任务阻塞 UI:在 UI 线程中执行长时间运行的任务会导致应用程序无响应。因此,应该将这些任务放在单独的线程中执行。更新 UI 线程:由于 UI 组件只能在 JavaFX 的主线程(UI 线程)中安全地更新,因此需要使用方法来确保 UI 更新操作在正确的线程中执行。线程的创建和管理:可以通过继承Thread类并重写run方法来创建新线程。也可以使用来管理线程池,这通常是更高效和灵活的方式。@OverrideLabel label = new Label("任务开始");
2024-10-23 13:47:13
1031
原创 JavaFx学习--chapter02(网络对话)
监听套接字:用于等待和接受客户端的连接请求。通信套接字:用于与已连接的客户端进行数据传输。这种设计使得服务器能够同时处理多个客户端连接,因为每个连接都有自己的通信套接字,而监听套接字则保持在监听状态,等待新的连接请求。如果你有更多问题或需要进一步的帮助,请告诉我!
2024-10-20 14:53:37
1001
原创 JavaFX学习系列--第一章: 简单Fx界面
版本为jdk8 (因为jdk8已经内置JavaFX库,高版本JDK中被剥离,需要额外下载jar 包),https://oc.gdufs.edu.cn 教学资源站点可下载JDK8(如果使用下面所述 的idea2018 整合版,则不用下载,整合版已经包含)。如果事件处理逻辑较为复杂,或者需要在多个地方重用相同的处理逻辑,那么将事件处理逻辑封装到一个单独的内部类中会是一个更好的选择。的内容是可以修改的。你提供的代码片段中,类添加更多的属性和方法,你还可以扩展其功能,以支持更复杂的事件处理场景。
2024-10-17 22:27:54
1943
原创 SFML库环境配置
一般你配置好vscode中的标准c++环境之后,都会有这个文件,,少一步骤就会出错,需要什么库的名字可以去查找安装的。所以我们要加上SFML库的头文件(我这里安装了。拷贝到你的项目下,使它能被找到(也可以。是用来语法检查和代码提示等功能的,目录下的所有(需要用到的)这个文件中包含需要的。目录下有什么库的名称。
2024-10-06 23:43:09
1011
原创 cmake的使用
CMake项目是基于CMakeLists.txt构建的,在CMakeLists.txt中(或是*.cmake)我们用到的就是CMake LanguageCMake Language的语法非常像一些命令式编程语言执行从源树(CMakeLists.txt)的根文件文件开始。
2024-10-06 11:05:45
1300
原创 cmake的使用
4. 执行命令时`-D`=ON/OFF来进行条件编译`cmake -B build -G "MinGW Makefiles" -DUSE_CATTWO=FALSE`就能正确地将 `USE_CATTWO` 设置为 `FALSE`。相比其他语言的构建工具,CMake自然要复杂的多,但这不是CMake的问题。- cmake参数: `cmake -G -T -A `
2024-10-05 17:52:15
1171
原创 pyqt自定义文本编辑器
通过实现类,我们创建了一个功能简单但实用的文本编辑器,可以根据用户的需求动态调整字体大小。这种功能极大地提高了用户体验,尤其是在长时间阅读或编写文档时。希望这个示例对你有所帮助,如果有任何问题或想法,请在评论区聊聊!
2024-09-09 14:47:13
855
原创 自动化抢票 12306
关键点:提示用户输入起始站、终点站和出发日期,然后转换为 12306 需要的编码。关键点:使用 Selenium 模拟用户在网页上的操作,如填写表单、点击按钮等。关键点:构建请求 URL,模拟浏览器发送 HTTP 请求获取数据。当然,下面我将重点介绍每个步骤的关键点,并附上相应的代码片段。关键点:从 12306 的 JS 文件中解析站点的三字码。关键点:解析服务器返回的 JSON 数据,并使用。
2024-09-07 19:24:14
31551
26
原创 使用DDU卸载显卡驱动并更新
首先到去下载你想要的驱动,根据你的显卡型号选择你想要的驱动,一般都是选大版本最后几个小版本然后下载,保存在任意位置(一般在c盘下)
2024-08-27 21:18:41
10497
3
原创 SSH和Git的基本知识
在Git中用于创建一个浅克隆(shallow clone),即只克隆仓库的历史记录中的最近一部分(最近的n次提交),而不是完整的仓库历史记录。Gitee(码云)和GitHub是两个不同的Git托管服务,虽然它们都支持Git协议,但在某些情况下,你可能需要为它们配置不同的Git设置。: 如果你在Gitee和GitHub上都有仓库,并且希望在同一个本地仓库中管理它们,你需要为每个远程仓库配置不同的URL。A: 是的,当你第一次连接到一个新的远程主机时,SSH客户端会提示你确认主机的公钥指纹,并将其添加到。
2024-08-26 20:13:15
2242
1
原创 爬虫中使用第三方打码平台(识别验证码)
总结来说,这段代码的功能是当用户点击验证提交按钮时,获取用户输入的验证码和验证码类型,然后通过AJAX请求将这些信息发送到服务器进行验证。在爬虫程序中,常常会遇到验证码校验的关卡,人工识别不仅慢而且很费精力,使用打码平台就成了高效,省时且便利的选择。首先我们对网页进行分析,通过键入搜索框,并点击搜索按钮,F12中的网络接口可以找到,发起了两次请求。,然后reload页面,发现,可以正常获得响应,于是,补充下列代码。,替换参数和图片地址,原本打印出来的是一个字典,我们取他的。,下载相应语言的接口示例。
2024-08-26 13:14:49
3150
原创 pyinstaller使用
PyInstaller bundles a Python application and all its dependencies into a singlepackage.The user can run the packaged app without installing a Pythoninterpreter or any modules. Pyinstaller supports Python 3.7 and newer, andcorrectly bundles many major Pytho
2024-08-13 20:03:06
1112
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人