<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[XC_SunnyBoy的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/XC_SunnyBoy</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; XC_SunnyBoy]]></copyright><item><title><![CDATA[软件项目交付所需相关文档（从准备—启动—实施—交付）通用]]></title><link>https://blog.youkuaiyun.com/XC_SunnyBoy/article/details/138192497</link><guid>https://blog.youkuaiyun.com/XC_SunnyBoy/article/details/138192497</guid><author>XC_SunnyBoy</author><pubDate>Thu, 25 Apr 2024 18:10:02 +0800</pubDate><description><![CDATA[在软件项目管理中，每个阶段都有其特定的目标和活动，确保项目的顺利进行和最终的成功交付。]]></description><category></category></item><item><title><![CDATA[python正整数分解质因数，10行代码搞定， 低于线性时间复杂度O(n)，并从小到大输出（python正整数分解质因数，python分解质因数）]]></title><link>https://blog.youkuaiyun.com/XC_SunnyBoy/article/details/125800767</link><guid>https://blog.youkuaiyun.com/XC_SunnyBoy/article/details/125800767</guid><author>XC_SunnyBoy</author><pubDate>Fri, 15 Jul 2022 11:58:49 +0800</pubDate><description><![CDATA[且当该数被最小质数分解后，继续分解剩余的数，则剩余的数一定不会被分解过的质数再次分解；且被最小质数分解后的数，在遇到“下一个被分解的质数”之前，一定不会被非质数的正整除分解。这里的“下一个被分解的质数”是指比上一个被分解的质数大且比下一个被分解的质数小的质数，如果是最后被分解的质数，则比上一个被分解的质数大即可；但本文提供另一种思路，充分利用了质数的特性，代码复杂度低，时间复杂度低。假设需要分解的数是26，分解质因数的结果是（2，13），那么他一定不会被2-13之间的非质数的正整数分解。..........]]></description><category></category></item><item><title><![CDATA[AI 图片截取（标注）、ffmpeg使用及安装, anaconda环境，图片标注(labelme)，模型训练(yolov5)，CUDA+Pytorch安装及版本相关问题]]></title><link>https://blog.youkuaiyun.com/XC_SunnyBoy/article/details/121342477</link><guid>https://blog.youkuaiyun.com/XC_SunnyBoy/article/details/121342477</guid><author>XC_SunnyBoy</author><pubDate>Tue, 04 Jan 2022 17:43:15 +0800</pubDate><description><![CDATA[AI 图片截取(ffmpeg), anaconda环境，图片标注(labelme)，模型训练(yolov5)，CUDA+Pytorch安装及版本相关问题
一、截取有效图片


提取视频有效画面图片
首先以视频文件名称创建目录，所有从该视频提取到的图片，均保存在相应的目录中
Linux安装ffmpeg（ffmpeg是具备段视频截取以及段视频图片截取功能的）
sudo apt-get install ffmpeg

Windows安装ffmpeg(Linux也可用此方法，但不如apt方式方便)

]]></description><category></category></item><item><title><![CDATA[python将字典（dist）用json.dumps()序列化后存入list，再次重新序列化改字典并删除，却删不掉得问题]]></title><link>https://blog.youkuaiyun.com/XC_SunnyBoy/article/details/121556138</link><guid>https://blog.youkuaiyun.com/XC_SunnyBoy/article/details/121556138</guid><author>XC_SunnyBoy</author><pubDate>Tue, 07 Dec 2021 21:07:25 +0800</pubDate><description><![CDATA[场景：
借助redis存储json.dumps()序列化的dist，删除不掉
dist是无序的，被json.dumps()  序列化后的dist也是无序的.  
		rd.lrem() 是删除指定元素，josn.dumps(dist)元素已经无序的被写入了redis列表中，直接用rd.lrem() 去删除重新获取的json.dumps(dist)，其实这里的元素已经与写入的dist元素不同了，所以是无法删除的。
		如果dist中的元素比较少的话，应该是可以删除的，顺序没有被打乱，但如果元素比较多的时候，就]]></description><category></category></item><item><title><![CDATA[python中oracle的使用过程中报错总结. oracle环境配置问题, oracle的sql语法问题,oracle的sql中timestamp写入问题, oracle编码问题等]]></title><link>https://blog.youkuaiyun.com/XC_SunnyBoy/article/details/121616080</link><guid>https://blog.youkuaiyun.com/XC_SunnyBoy/article/details/121616080</guid><author>XC_SunnyBoy</author><pubDate>Tue, 30 Nov 2021 13:55:34 +0800</pubDate><description><![CDATA[python中oracle的使用过程中报错总结.
- DatabaseError: DPI-1047错误.环境配置问题
cx_Oracle.DatabaseError: DPI-1047: Cannot locate a 64-bit Oracle Client library: “libclntsh.so: cannot open shared object file: No such file or directory”. See https://cx-oracle.readthedocs.io/en/]]></description><category></category></item><item><title><![CDATA[当sqlalchemy/pymysql遇到多任务(多线程/多进程)访问mysql，session.close() ，engine.dispose，事务session.rollback()]]></title><link>https://blog.youkuaiyun.com/XC_SunnyBoy/article/details/117484748</link><guid>https://blog.youkuaiyun.com/XC_SunnyBoy/article/details/117484748</guid><author>XC_SunnyBoy</author><pubDate>Tue, 08 Jun 2021 17:39:11 +0800</pubDate><description><![CDATA[当sqlalchemy/pymysql遇到多任务(多线程/多进程/协程)

]]></description><category></category></item><item><title><![CDATA[opencv-python获取rtsp视频流数据程序运行过程中发生错误，直至异常结束]]></title><link>https://blog.youkuaiyun.com/XC_SunnyBoy/article/details/116935889</link><guid>https://blog.youkuaiyun.com/XC_SunnyBoy/article/details/116935889</guid><author>XC_SunnyBoy</author><pubDate>Mon, 17 May 2021 16:16:51 +0800</pubDate><description><![CDATA[opencv处理rtsp视频发生异常错误，至程序异常结束
问题：
**在使用opencv读取rtsp监控摄像头数据的时候发生的错误信息**
代码示例
首先一下是我的代码，读取的是监控视频rtsp数据

q = queue.Queue(5)
cap = cv2.VideoCapture("rtsp://user:passwod@xx.xx.xx.xx/")


def func1():
    while cap.isOpened():
        try:
            ret, img0 =]]></description><category></category></item><item><title><![CDATA[flask-sqlalchemy和sqlalchemy（flask-sqlalchemy使用最需要注意的地方）]]></title><link>https://blog.youkuaiyun.com/XC_SunnyBoy/article/details/116299608</link><guid>https://blog.youkuaiyun.com/XC_SunnyBoy/article/details/116299608</guid><author>XC_SunnyBoy</author><pubDate>Fri, 30 Apr 2021 12:54:38 +0800</pubDate><description><![CDATA[友情提示
	除非你开发的用到和数据库交互都是在web接口的情况下，否则别用flask-sqlalchemy，直接用sqlalchemy
有这样一个比喻，很形象
sqlalchemy是一群猴子，而flask-sqlalchemy则是其中的一只猴子
为什么这么说，因为flask-sqlalchemy是简化版的sqlalchemy
介绍
二者的使用方式很像，只不过sqlalchemy是需要自己创建引擎，连接数据库，去操作数据库，sqlalchemy也是一种数据库，是一个关系型数据库框架，是python中最著名的O]]></description><category></category></item><item><title><![CDATA[MQTT在Python中的使用mqtt-paho(简单实例, 回调函数,回调参数，qos安全等级)详解及回调函数的正确用法]]></title><link>https://blog.youkuaiyun.com/XC_SunnyBoy/article/details/115790445</link><guid>https://blog.youkuaiyun.com/XC_SunnyBoy/article/details/115790445</guid><author>XC_SunnyBoy</author><pubDate>Sat, 17 Apr 2021 14:04:59 +0800</pubDate><description><![CDATA[目录



一. mqtt概念

二. mqtt的实现

mqtt简单应用(实例)

三. mqtt回调函数

连接回调 on_connect

订阅回调 on_subscribe

消息回调 on_message

消息发布回调 on_publish

取消订阅 on_unsubscribe

断开连接回调 ondisconnect

套接子打开回调 on_scoket_open

套接子关闭回调 on_socket_close

套接子写入回调 on_socket_register

套接子注销写入..]]></description><category></category></item><item><title><![CDATA[flask服务器配置中的坑：python框架flask项目运行时404错误]]></title><link>https://blog.youkuaiyun.com/XC_SunnyBoy/article/details/115676135</link><guid>https://blog.youkuaiyun.com/XC_SunnyBoy/article/details/115676135</guid><author>XC_SunnyBoy</author><pubDate>Tue, 13 Apr 2021 19:26:50 +0800</pubDate><description><![CDATA[flask项目运行时404错误
部署项目时遇到404找不到资源的问题
运行项目时项目可以正常启动，但是会提示UserWarning，如下：
UserWarning: Current server name '172.29.60.11:5000' doesn't match configured server name '0.0.0.0:5000'

UserWarning: Current server name ‘172.29.60.11:5000’ doesn’t match configured se]]></description><category></category></item><item><title><![CDATA[通过pymysql中cursor.execute()执行insert into 为mysql数据库插入数据时的坑及解决方法]]></title><link>https://blog.youkuaiyun.com/XC_SunnyBoy/article/details/108867314</link><guid>https://blog.youkuaiyun.com/XC_SunnyBoy/article/details/108867314</guid><author>XC_SunnyBoy</author><pubDate>Tue, 29 Sep 2020 14:12:58 +0800</pubDate><description><![CDATA[mysql数据库中insert into 插入数据中的坑
正常来说
一般通过
insert into 表名(字段1, 字段2, ...) values (值1, 值2, ...)

就可以将数据插入到该表中，例如：
直接在mysql数据库中操作：
insert into person(name,phone,hire_date,salary)
values('张三', '13112345678', '2020-05-21', 15000.0);

通过远程连接数据库插入数据
connect = pymysql]]></description><category></category></item><item><title><![CDATA[python中threading线程详解（Thread类、join()方法、线程锁）]]></title><link>https://blog.youkuaiyun.com/XC_SunnyBoy/article/details/108549101</link><guid>https://blog.youkuaiyun.com/XC_SunnyBoy/article/details/108549101</guid><author>XC_SunnyBoy</author><pubDate>Sat, 12 Sep 2020 15:01:34 +0800</pubDate><description><![CDATA[threading线程
​		在同一个进程中需要同时执行多个 “子任务” ，将这些 “子任务” 称之为线程
​		同一个进程中的线程共享该进程的资源
​		通过 threading 模块中的 Thread 类可以创建线程对象
​		在创建进程的时候，系统会自动创建一个主线程，每个线程都有属于自己的名称，当需要查看线程的名称的时候，可以 使用
​		threading.current_thread().name     —&gt;  获取当前正在执行的线程的名称
​		thread.current_thre.]]></description><category></category></item><item><title><![CDATA[pymysql详解（connect连接、游标cursor、获取查询结果集、获取实时数据、解决查询数据为历史数据问题、insert into需要注意的地方）]]></title><link>https://blog.youkuaiyun.com/XC_SunnyBoy/article/details/108546128</link><guid>https://blog.youkuaiyun.com/XC_SunnyBoy/article/details/108546128</guid><author>XC_SunnyBoy</author><pubDate>Sat, 12 Sep 2020 10:56:09 +0800</pubDate><description><![CDATA[#### pymysql
​		pymysql 的语法兼容MySQLdb，是使用Python写的
​		pymysql 是可以远程连接数据库并对数据库中的数据进行操作的工具
pymysql是使用


​		首先，必须先和数据库建立一个传输数据的连接通道，需要用到pymysql下的connect()方法
​		pymysql.connect() 方法返回的是Connections模块下的Connection 实例，connect() 方法传参就是在给Connection类的 _init_  初始化魔术方法参数]]></description><category></category></item><item><title><![CDATA[爬虫scrapy框架详解]]></title><link>https://blog.youkuaiyun.com/XC_SunnyBoy/article/details/108415846</link><guid>https://blog.youkuaiyun.com/XC_SunnyBoy/article/details/108415846</guid><author>XC_SunnyBoy</author><pubDate>Sat, 05 Sep 2020 11:55:43 +0800</pubDate><description><![CDATA[Scrapy是什么
​		Scrapy是一个为了爬取网站数据，提取结构性数据而编写的应用框架。 可以应用在包括数据挖掘，信息处理或存储历史数据等一系列的程序中。**
如何安装Scrapy


正常安装


​		pip install scrapy 2.3.0   （在Window10环境下，可能会出现 gzip解码错误）
​		pip install scrapy 2.1.0   （建议安装版本）


win7安装错误解决方案


​		如果安装有错误！！！！
​			pip install Scrapy]]></description><category></category></item><item><title><![CDATA[Flask框架中flask_restful请求参数解析验证数据方法Resource, reqparse]]></title><link>https://blog.youkuaiyun.com/XC_SunnyBoy/article/details/108137761</link><guid>https://blog.youkuaiyun.com/XC_SunnyBoy/article/details/108137761</guid><author>XC_SunnyBoy</author><pubDate>Thu, 20 Aug 2020 23:47:18 +0800</pubDate><description><![CDATA[**验证前端数据方法Resource, reqparse**
​		1、导入模块
​		from flask_restful import Resource, reqparse
​		2、创建
​		parser = reqparse.RequestParser()
​		3、使用add_argument()方法添加验证内容
​		例如：

        # 添加评论：book_id、content、Authorization
        parser = reqparse.RequestParser]]></description><category></category></item></channel></rss>