<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[杨宇琛的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/qq_34081968</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; qq_34081968]]></copyright><item><title><![CDATA[linux 高并发 文件句柄数 fs 及 tcp端口数调优]]></title><link>https://blog.youkuaiyun.com/qq_34081968/article/details/147723343</link><guid>https://blog.youkuaiyun.com/qq_34081968/article/details/147723343</guid><author>qq_34081968</author><pubDate>Mon, 05 May 2025 21:47:37 +0800</pubDate><description><![CDATA[编辑 /etc/security/limits.conf。编辑 /etc/sysctl.conf。]]></description><category></category></item><item><title><![CDATA[Python Grpc安装protoc-gen-js并执行 grpc-web生成py文件]]></title><link>https://blog.youkuaiyun.com/qq_34081968/article/details/146541494</link><guid>https://blog.youkuaiyun.com/qq_34081968/article/details/146541494</guid><author>qq_34081968</author><pubDate>Wed, 26 Mar 2025 21:30:53 +0800</pubDate><description><![CDATA[使用grpc_tools.protoc遇到报错‘protoc-gen-js’ 不是内部或外部命令，也不是可运行的程序或批处理文件。的处理。]]></description><category></category></item><item><title><![CDATA[[反反爬虫 JavaScript geetest 点选 滑块 验证码识别]实战解密geetest点选js加密(1)]]></title><link>https://blog.youkuaiyun.com/qq_34081968/article/details/117162219</link><guid>https://blog.youkuaiyun.com/qq_34081968/article/details/117162219</guid><author>qq_34081968</author><pubDate>Sat, 22 May 2021 16:54:19 +0800</pubDate><description><![CDATA[声明
仅供学习和参考，若有任何法律问题，联系作者24小时内删除
抓包
通过 https://www.xxx.com.hk/geetest/checkout.json?t=1621665497977&amp;type=QS_CHECK_OUT 获取到gt和challenge
找到关键的请求
知道了需要解密fullpage以及click
仅解密一个作为事例
对于click的解密
unicode部分
先替换掉部分unicode至可读的内容


成功看到部分明文
bnw部分

这里可以看到有很多ALStn.Dcj(]]></description><category></category></item><item><title><![CDATA[[jetbarin pycharm]错误购买团队许可后的退款]]></title><link>https://blog.youkuaiyun.com/qq_34081968/article/details/117089207</link><guid>https://blog.youkuaiyun.com/qq_34081968/article/details/117089207</guid><author>qq_34081968</author><pubDate>Thu, 20 May 2021 19:18:40 +0800</pubDate><description><![CDATA[原因
jetbarin官网默认显示的居然是团队许可，被jetbarin撸了两年。害，知道之后就开始了挽回损失的道路。
邮箱
sales.cn@jetbrains.com为大中华区的销售联系方式
过程










]]></description><category></category></item><item><title><![CDATA[[中国电信 外网ip 光猫 端口映射 端口转发 远程协助]记一次和中国电信获取外网ip并设置端口映射、端口转发以及设置光猫 成功外网远程协助的过程]]></title><link>https://blog.youkuaiyun.com/qq_34081968/article/details/117088785</link><guid>https://blog.youkuaiyun.com/qq_34081968/article/details/117088785</guid><author>qq_34081968</author><pubDate>Thu, 20 May 2021 19:09:44 +0800</pubDate><description><![CDATA[环境
湖北电信
得到外网ip

拨打10000电话
“是否可以把我拨打的手机号的下的宽带变更为外网ip”
客服小姐姐核实宽带户主姓名及宽带的房屋地址
5分钟后重启猫、路由器
成功得到外网ip

远程协助
遇到的困难
刚开始设置了端口转发和端口映射并不能成功的用外网访问到内网的对应端口，一番查阅资料以及看log发现需要光猫设置为桥接模式或在光猫设置端口转发(当然路由器的端口转发也是必要)
在光猫设置端口转发

光猫的机身后有对应的管理员账户和密码，登录192.168.1.1
设置端口转发至192.168.1.]]></description><category></category></item><item><title><![CDATA[python discord.py重写 bot add role]]></title><link>https://blog.youkuaiyun.com/qq_34081968/article/details/116669833</link><guid>https://blog.youkuaiyun.com/qq_34081968/article/details/116669833</guid><author>qq_34081968</author><pubDate>Tue, 11 May 2021 20:59:34 +0800</pubDate><description><![CDATA[环境
python3 + discord.py 1.3.4
解决方案
guild = bot.get_guild(你的服务器id)
role =  discord.utils.get(guild.roles, name="你的role Name")
user_id = ctx.message.author.id
await bot.http.add_role(guild_id=guild.id, role_id=role.id, user_id=data["user_id"])


...]]></description><category></category></item><item><title><![CDATA[(pyqt5 qml qt quick) QAbstractTableModel.columnCount() is abstract and must be overridden]]></title><link>https://blog.youkuaiyun.com/qq_34081968/article/details/115432707</link><guid>https://blog.youkuaiyun.com/qq_34081968/article/details/115432707</guid><author>qq_34081968</author><pubDate>Sun, 04 Apr 2021 20:16:28 +0800</pubDate><description><![CDATA[问题
QAbstractTableModel.columnCount() is abstract and must be overridden
解决方案
    def columnCount(self, parent: QAbstractTableModel) -&gt; int:
        return len(self.roleNames())


]]></description><category></category></item><item><title><![CDATA[(1) 京东下单分析 _JdTdudfp参数的生成]]></title><link>https://blog.youkuaiyun.com/qq_34081968/article/details/112212210</link><guid>https://blog.youkuaiyun.com/qq_34081968/article/details/112212210</guid><author>qq_34081968</author><pubDate>Tue, 05 Jan 2021 09:06:55 +0800</pubDate><description><![CDATA[X东下单的分析

找到_JdTdudfp 参数由哪个js生成，并解密出加密后的js
用其他语言或非浏览器环境实现生成_JdTdudfp

实战分析
找到_JdTdudfp由哪个js生成
在下单页面

用chrome扩展全局搜索_JdTdudfp
在两个js中有_JdTdudfp 两个js内容一样 随便选一个先保存
可以看到有一个参数是p，a ，c，k，e，r的函数和字符串
直接在return p的地方下断 刷新 保存p的值


复制 保存
这里是没有经过格式化的js 顺便再去js格式化一下

就拿到了明文]]></description><category></category></item><item><title><![CDATA[在使用altstore时遇到的“Could not connect to Mail plug-in“导致的“Installation Faild“的解决方案]]></title><link>https://blog.youkuaiyun.com/qq_34081968/article/details/111464288</link><guid>https://blog.youkuaiyun.com/qq_34081968/article/details/111464288</guid><author>qq_34081968</author><pubDate>Sun, 20 Dec 2020 22:40:21 +0800</pubDate><description><![CDATA[遇到的问题

“The operation couldn’t be completed. Could not connect to Mail plug-in.”
解决方案
在邮件的配置的插件中 允许AltPlugin.mailbundle
图文流程


启动邮件



点击左上角的邮件


点击偏好设置


管理插件



勾选AltPlugin.mailbundle并应用并重启邮件并允许访问




...]]></description><category></category></item><item><title><![CDATA[MacOs11.0-brew报错“in `initialize‘: Version value must be a string； got a NilClass () (TypeError)”解决方法]]></title><link>https://blog.youkuaiyun.com/qq_34081968/article/details/109814914</link><guid>https://blog.youkuaiyun.com/qq_34081968/article/details/109814914</guid><author>qq_34081968</author><pubDate>Thu, 19 Nov 2020 15:58:23 +0800</pubDate><description><![CDATA[MacOs11.0-brew报错“in `initialize’: Version value must be a string; got a NilClass () (TypeError)”解决方法
报错

原因
Brew仅支持macOs的公开发行版，若为beta版则无法使用
解决方法

安装最新版本的Command Line tools, 前往https://developer.apple.com/download/more/下载



前往报错的路径/usr/local/Homebrew/Libra]]></description><category></category></item><item><title><![CDATA[登陆apple developer出现 您的apple ID 暂时不符合使用此应用程序的条件]]></title><link>https://blog.youkuaiyun.com/qq_34081968/article/details/109518918</link><guid>https://blog.youkuaiyun.com/qq_34081968/article/details/109518918</guid><author>qq_34081968</author><pubDate>Thu, 05 Nov 2020 19:41:05 +0800</pubDate><description><![CDATA[原因
apple id为手机号注册
与apple的沟通过程
先打了400的apple电话，告知400的apple客服是没办法解决开发者的问题的，发送给了我https://developer.apple.com/cn的链接让我去开发者联系开发者部门的客服

但此页面也需要先登陆apple id后才能进行后续的操作

于是进入了死循环
可能是唯一的解决方案
重新注册一个以邮箱注册的apple id，随即可以正常登陆。

...]]></description><category></category></item><item><title><![CDATA[Mac10.16 python3安装pillow]]></title><link>https://blog.youkuaiyun.com/qq_34081968/article/details/109100499</link><guid>https://blog.youkuaiyun.com/qq_34081968/article/details/109100499</guid><author>qq_34081968</author><pubDate>Thu, 15 Oct 2020 16:47:19 +0800</pubDate><description><![CDATA[Mac10.16 python3安装pillow
环境
系统版本：MacOs10.16 beta9
python版本：3.8.2
安装时出现的问题
在使用了pip3 install pillow和pip3 install pillow --user后都出现了如下的错误
ported
    #error architecture not supported
     ^
    fatal error: too many errors emitted, stopping now [-ferror-limit]]></description><category></category></item><item><title><![CDATA[python-threading-Condition-互斥锁的使用]]></title><link>https://blog.youkuaiyun.com/qq_34081968/article/details/109004276</link><guid>https://blog.youkuaiyun.com/qq_34081968/article/details/109004276</guid><author>qq_34081968</author><pubDate>Sat, 10 Oct 2020 20:57:27 +0800</pubDate><description><![CDATA[互斥锁
互斥锁锁最简单的线程同步机制，Python提供的Condition对象提供了对复杂线程同步问题的支持
与Lock的区别

Condition被称为条件对象，除了提供于Lock类似的acquire和release方法外，还提供了wait和notify方法

Condition的处理流程

先acquire一个条件变量，再判断一些条件
如果条件不满足，则wait
如果条件满足，进行一些处理改变条件后，通过notify方法通知其他线程，其他处于wait状态的线程接到通知后重新判断条件
不断的重复这一过程，]]></description><category></category></item><item><title><![CDATA[python queue的线程安全]]></title><link>https://blog.youkuaiyun.com/qq_34081968/article/details/109003762</link><guid>https://blog.youkuaiyun.com/qq_34081968/article/details/109003762</guid><author>qq_34081968</author><pubDate>Sat, 10 Oct 2020 20:25:10 +0800</pubDate><description><![CDATA[queue的线程安全
queue本身并不是线程安全的，需要使用锁来达到线程安全的目的
重写queue_threadsafe的基本的实现
import time
import threading

class ThreadSafeQueueExcepetion(Exception):
    pass

class ThreadSafeQueue(object):
    def __init__(self, max_size=0):
        self.queue = []
        self.]]></description><category></category></item><item><title><![CDATA[python queue基础]]></title><link>https://blog.youkuaiyun.com/qq_34081968/article/details/109003744</link><guid>https://blog.youkuaiyun.com/qq_34081968/article/details/109003744</guid><author>qq_34081968</author><pubDate>Sat, 10 Oct 2020 20:24:23 +0800</pubDate><description><![CDATA[queue
python库的名称：queue
常用的导入方式
from queue import Queue,LifoQueue,PriorityQueue

队列的四种类型
Queue FIFO， First in first out 先进先出
LifoQueue LIFO, Last in first out 后进先出
PriorityQueue 优先队列，级别越低，越优先
deque 双边队列
Queue 先进先出队列
from queue import Queue

q = Queue(maxsiz]]></description><category></category></item><item><title><![CDATA[（3）sensor_data分析+解决AKAMAI BOT manager 函数与变量之间的关系图 及 该风控都收集了哪些数据]]></title><link>https://blog.youkuaiyun.com/qq_34081968/article/details/106506958</link><guid>https://blog.youkuaiyun.com/qq_34081968/article/details/106506958</guid><author>qq_34081968</author><pubDate>Tue, 02 Jun 2020 22:41:45 +0800</pubDate><description><![CDATA[慢慢一点点整理出来，其实不难


]]></description><category></category></item><item><title><![CDATA[（2）sensor_data分析+解决AKAMAI BOT manager 反混淆js文件]]></title><link>https://blog.youkuaiyun.com/qq_34081968/article/details/106506885</link><guid>https://blog.youkuaiyun.com/qq_34081968/article/details/106506885</guid><author>qq_34081968</author><pubDate>Tue, 02 Jun 2020 22:40:07 +0800</pubDate><description><![CDATA[保存akamai网页风控的文件

思路
可以看到，这里只用了字典列表嵌套，其实解决其实很简单，直接replace即可。
代码
def getMiddleText(str='', behind='', under=''):
    try:
        return re.search(behind+"(.*?)"+under, str).group(1)
    except:
        return ''


if __name__ == '__main__':
    with open('你]]></description><category></category></item><item><title><![CDATA[（1）sensor_data分析+解决AKAMAI BOT manager 总体解决大纲]]></title><link>https://blog.youkuaiyun.com/qq_34081968/article/details/106506814</link><guid>https://blog.youkuaiyun.com/qq_34081968/article/details/106506814</guid><author>qq_34081968</author><pubDate>Tue, 02 Jun 2020 22:35:00 +0800</pubDate><description><![CDATA[反混淆带用AKAMAI BOT MANAGER的网页的js，得到明文的js
关系图理清js部分的函数和变量关系，及检测了哪些参数
通过模拟数据请求，通过AKAMAI
解析其中的坑和难以检测的点

纯原创，禁止转载

]]></description><category></category></item><item><title><![CDATA[pyqt5+qml+pyinstaller+python打包时的小意外]]></title><link>https://blog.youkuaiyun.com/qq_34081968/article/details/106169435</link><guid>https://blog.youkuaiyun.com/qq_34081968/article/details/106169435</guid><author>qq_34081968</author><pubDate>Sun, 17 May 2020 08:33:43 +0800</pubDate><description><![CDATA[打包时出现

could not load the qt platform plugin “windows” in “” even though it
was found

解决办法

安装pyside2
将PyQt5/Qt/plugins中的platforms移动至执行文件.exe文件目录下

以上两个步骤，不知道是哪个起了作用 成功打包解决。

...]]></description><category></category></item><item><title><![CDATA[python+pyinstaller+OOS自动更新(3) OOS部分]]></title><link>https://blog.youkuaiyun.com/qq_34081968/article/details/106150853</link><guid>https://blog.youkuaiyun.com/qq_34081968/article/details/106150853</guid><author>qq_34081968</author><pubDate>Fri, 15 May 2020 22:30:33 +0800</pubDate><description><![CDATA[python+pyinstaller+OOS自动更新(3) OOS部分
OOS
海量、安全、低成本、高可靠的云存储服务，提供99.9999999999%的数据可靠性。使用RESTful API 可以在互联网任何位置存储和访问，容量和处理能力弹性扩展，多种存储类型供选择全面优化存储成本。

创建Bucket归档储存
步骤省略，根据阿里云操作创建
文件上传操作
1.上传所有打包好的所有文件和filehash.txt到OOS
2.获取你的AccessKeyId及AccessKeySecret


...]]></description><category></category></item></channel></rss>