<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[choy_cc的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/choy_cc</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; choy_cc]]></copyright><item><title><![CDATA[python3-selenium登陆验证码，文字识别-百度AI SDK]]></title><link>https://blog.youkuaiyun.com/choy_cc/article/details/112545886</link><guid>https://blog.youkuaiyun.com/choy_cc/article/details/112545886</guid><author>choy_cc</author><pubDate>Tue, 12 Jan 2021 20:40:12 +0800</pubDate><description><![CDATA[先看看识别的效果，使用起来很方便，直接引用第三方库就搞定：试用了一下，像图片这种验证码，成功率大约80%左右，返回结果，有时候会是空，或者识别错误的
所以，在实际操作中，还是需要写个方法，遇到失败需要重新截图识别的

1、安装
pip install baidu-aip
2、注册百度AI账户

可自行百度，或链接：百度AI-网络图片识别
注册成功后，需要创建应用，本文创建的应用是：文字识别
然后从应用中获取：APP_ID，API_KEY ，SECRET_KEY

3、编写脚本
from selenium i]]></description><category></category></item><item><title><![CDATA[使用locust同时压测http和websocket]]></title><link>https://blog.youkuaiyun.com/choy_cc/article/details/105517547</link><guid>https://blog.youkuaiyun.com/choy_cc/article/details/105517547</guid><author>choy_cc</author><pubDate>Wed, 15 Apr 2020 10:54:19 +0800</pubDate><description><![CDATA[因连接websocket业务逻辑是需要先登录，拿到token作为参数去请求，所以测试websocket协议也必须先使用登录接口。
这里是基于ws4py库连接websocket
先写基础的链接类：
from locust import TaskSet, task, between, Locust, events, HttpLocust
from ws4py.client.threadedclient...]]></description><category></category></item><item><title><![CDATA[python导包]]></title><link>https://blog.youkuaiyun.com/choy_cc/article/details/103987008</link><guid>https://blog.youkuaiyun.com/choy_cc/article/details/103987008</guid><author>choy_cc</author><pubDate>Wed, 15 Jan 2020 12:26:21 +0800</pubDate><description><![CDATA[导出所有包：
导出当前环境的第三方库的库名和版本号
pip freeze &gt; requirements.txt

只导出项目依赖包
安装pipreqs
pip install pipreqs

1、在项目根目录执行命令
pipreqs ./
或者
pipreqs ./ --encoding=utf-8
2、自动生成requirements.txt文件
安装包
目标环境安装这些库
pip in...]]></description><category></category></item><item><title><![CDATA[python3使用pip install mysqlclient失败的解决过程]]></title><link>https://blog.youkuaiyun.com/choy_cc/article/details/103985661</link><guid>https://blog.youkuaiyun.com/choy_cc/article/details/103985661</guid><author>choy_cc</author><pubDate>Wed, 15 Jan 2020 11:55:40 +0800</pubDate><description><![CDATA[首先，我的基础解析器是已经是成功通过pip install mysqlclient安装了。
但是今天创建了一个新的Django项目，同时也创建了一个新的虚拟环境，在pip install mysqlclient的时候居然失败了，简单的办法是我也可以选择在创建虚拟环境的时候，直接继承基础解析器，不过这样就把基础解析器已安装的包全部继承了过来，这就不太合适了。
失败的截图如下：
提示：
MySQLdb...]]></description><category></category></item><item><title><![CDATA[MYSQL存储过程插入百万测试数据]]></title><link>https://blog.youkuaiyun.com/choy_cc/article/details/90040974</link><guid>https://blog.youkuaiyun.com/choy_cc/article/details/90040974</guid><author>choy_cc</author><pubDate>Thu, 09 May 2019 16:33:25 +0800</pubDate><description><![CDATA[已有测试表test_table
DELIMITER $$    -- 重新定义“;”分号

DROP PROCEDURE IF EXISTS test_insert $$   -- 如果有test_insert这个存储过程就删除
CREATE PROCEDURE test_insert()			  -- 创建存储过程

BEGIN
	DECLARE n int DEFAULT 1;				    ...]]></description><category></category></item><item><title><![CDATA[python多线程，线程停止后重启的方法]]></title><link>https://blog.youkuaiyun.com/choy_cc/article/details/85102703</link><guid>https://blog.youkuaiyun.com/choy_cc/article/details/85102703</guid><author>choy_cc</author><pubDate>Wed, 19 Dec 2018 17:36:37 +0800</pubDate><description><![CDATA[之前写的脚本，会出现因网络原因关闭某些线程，先构思了一个启动一个相同线程的方法
网上看了一些什么用setName方法重命名并再启动线程的方法，还是会报错
所以现在基本思路是：
因PYTHON的垃圾回收机制，关闭的线程会自动回收，所以不必担心启动太多线程而造成的内存问题。
1、把所有线程保存在一个list，把所有线程名和启动线程args存入一个dict
2、定时循环这个list，查找没启动的线程，并...]]></description><category></category></item><item><title><![CDATA[排列组合]]></title><link>https://blog.youkuaiyun.com/choy_cc/article/details/84861468</link><guid>https://blog.youkuaiyun.com/choy_cc/article/details/84861468</guid><author>choy_cc</author><pubDate>Thu, 06 Dec 2018 17:14:13 +0800</pubDate><description><![CDATA[排列A(5,2)=54=20
有序的排列：1,2和2,1是两个排列
组合C(5,2)=54 / 2*1 =10
无序的排列：1,2和2,1是算一个
import itertools
创建高效迭代器的Python模块
from itertools import combinations
导入组合C
from itertools import permutations
导入排列A
a = list(c...]]></description><category></category></item><item><title><![CDATA[python多线程连接websocket的测试脚本]]></title><link>https://blog.youkuaiyun.com/choy_cc/article/details/84634175</link><guid>https://blog.youkuaiyun.com/choy_cc/article/details/84634175</guid><author>choy_cc</author><pubDate>Thu, 29 Nov 2018 15:53:40 +0800</pubDate><description><![CDATA[#coding=utf-8

from ws4py.client.threadedclient import WebSocketClient
from ws4py import websocket
from framework.testCoin import loginByMobile,getTable,wsHost
from framework.logger2 import Logger
imp...]]></description><category></category></item><item><title><![CDATA[禅道下载地址]]></title><link>https://blog.youkuaiyun.com/choy_cc/article/details/82746894</link><guid>https://blog.youkuaiyun.com/choy_cc/article/details/82746894</guid><author>choy_cc</author><pubDate>Mon, 17 Sep 2018 18:22:38 +0800</pubDate><description><![CDATA[ZenTao项目管理软件
https://sourceforge.net/p/zentao/activity/?page=0&amp;amp;limit=100#5b6bfad7e8ba7c457644bf7c

]]></description><category></category></item><item><title><![CDATA[小工具]]></title><link>https://blog.youkuaiyun.com/choy_cc/article/details/82621908</link><guid>https://blog.youkuaiyun.com/choy_cc/article/details/82621908</guid><author>choy_cc</author><pubDate>Tue, 11 Sep 2018 10:30:28 +0800</pubDate><description><![CDATA[输入房间号，自动打开多个浏览器的小工具 
可以指定位置打开窗口，并可以设置数量



import time
from selenium import webdriver

url = &amp;quot;url&amp;quot;
room_id = &amp;quot;000&amp;quot; + input(&amp;quot;输入房间号后3位：&amp;quot;)

y = 350
x = 0
userid = 2835
user_num = 2

for _ in range(user_n..]]></description><category></category></item><item><title><![CDATA[VIM的复制粘贴]]></title><link>https://blog.youkuaiyun.com/choy_cc/article/details/82499463</link><guid>https://blog.youkuaiyun.com/choy_cc/article/details/82499463</guid><author>choy_cc</author><pubDate>Fri, 07 Sep 2018 16:59:43 +0800</pubDate><description><![CDATA[普通模式下光标移动到需要复制的行，shift+v进入visual block状态，移动光标选择需要复制的行数，然后按y复制，再移动光标到所需要粘贴的行数，按p粘贴。 
shift+v是选整行，ctrl+v是可以选单字符

普通模式下按 : ，然后输入行数就可以跳转到指定行；...]]></description><category></category></item></channel></rss>