El Psy Congroo

写自己想写的东西。GitHub: https://github.com/xfgryujk

微博登录和session恢复过程

很多微博登录的源码24小时后session失效不能恢复,所以自己研究了一下恢复的流程

2019-04-24 19:58:19

阅读数 335

评论数 2

51单片机播放音乐(三):PWM播放任意波形

51单片机播放音乐(三):PWM播放任意波形原理PWM仿真电路图音频文件转成PWM代码单片机代码仿真输出波形 本文完整源码 原理 PWM 详细的参考这篇文章,这里简单说一下 脉冲宽度调制(PWM)的基本原理是冲量相等而形状不同的窄脉冲加在具有惯性的环节上时,其效果基本相同。冲量指窄脉冲的面积。效果...

2018-11-25 12:55:37

阅读数 1547

评论数 2

51单片机播放音乐(二):DA转换播放任意波形

51单片机播放音乐(二):DA转换播放任意波形原理DA转换器仿真电路图音频文件转成C语言数组代码单片机代码仿真输出波形 本文完整源码 用数字信号带动蜂鸣器同一时间只能发出一种频率的声音,也没有和弦,会比较难听。而我们听到的音乐可以表示成任意波形的模拟信号,所以需要用DA转换器输出模拟信号 原理 ...

2018-11-22 22:47:14

阅读数 1155

评论数 1

51单片机播放音乐(一):蜂鸣器

51单片机播放音乐(一):蜂鸣器原理蜂鸣器乐谱转成循环次数单片机代码仿真电路图 本文完整源码 原理 蜂鸣器 蜂鸣器分为有(震动)源的和无源的,有源的无法控制频率,所以用无源的才能播放音乐。无源蜂鸣器需要自己控制输入变化的信号才能发声,最简单的就是输入方波信号了,通过单片机控制方波的频率就能发出不同...

2018-11-20 21:38:52

阅读数 7675

评论数 0

将洛奇的MML乐谱转为beep(蜂鸣器)乐谱

将洛奇的MML乐谱转为beep(蜂鸣器)乐谱转换器制作音高频率表词法分析、语法分析token转换为beep谱用法使用C++播放 最近对蜂鸣器音乐感兴趣,但是找不到乐谱,于是想把其他乐谱转为蜂鸣器乐谱。直接用MIDI转换很困难,因为MIDI一个音轨可以同时发出不同的音,所以我想到了用以前玩过的游戏中...

2018-11-18 13:52:17

阅读数 858

评论数 1

无DLL,直接将整个EXE注入其他进程

注入代码的方式比较 注入shellcode 优点: 1. 简单,只需要EXE的一部分。代码可以用C\C++或汇编写 缺点: 1. 要写位置无关代码,这意味着不能直接使用全局变量、其他编译单元的函数(包括CRT的memcpy)、API等。如果要使用则要由源进程分配空间、计算API在目标进程...

2018-08-02 16:38:00

阅读数 2138

评论数 0

C++模板取函数参数类型和返回值类型的方法

假设要利用模板元编程获取位于index的参数的类型: template<int index, class FuntionType> struct ArgTypeAt { // FuntionType的返回值类型和参数类型? };...

2018-08-02 11:53:28

阅读数 2248

评论数 7

写一个微博上传图片自动加密解密工具

微博的和谐太厉害了,有时候发色图加了反色还是会被和谐,于是我就想写一个简单的程序用来自动加密解密图片 GitHub 库在这里:weibo-img-crypto 添加加密解密处理 加密 我的目的是在上传图片时自动加密,但是上传时的处理函数是在闭包里的,JS 好像没有办法访问闭包里没有导出...

2018-07-15 22:58:11

阅读数 1382

评论数 2

Python实现一个强大的配置库

应用程序经常要读取配置文件,还要验证输入是否有效、没有配置时使用默认值,于是我就想怎么简化这一流程 文件格式 首先为了方便用户直接改写,文件格式一定要是可读的。Python 标准库里可以读写可读配置的库有 configparser(ini文件)、json、xml,其中 ini、xml 文件不分...

2018-07-05 12:39:42

阅读数 571

评论数 0

Python协程的底层实现

生成器 协程的核心就是上下文切换,在Python中最简单的实现是用生成器 生成器有个方法 send() 可以从调用者向生成器函数发送数据,这样就可以在生成器中 yield future 表示要等待 future 的结果,然后把上下文切换到调用者,等 future 结果准备好后调用者再 send...

2018-06-29 14:13:57

阅读数 2637

评论数 0

可靠性数据分析教程总结

常见的可靠性指标及其概率解释 失效分布和平均寿命 剩余寿命 具有年龄t的产品从t开始继续使用下去直到失效为止所经历的时间,记为ξtξt\xi_t Ft(x)=P(ξt⩽x)=P(ξ⩽t+x|ξ>t)=F(t+x)−F(t)1−F(x)Ft(x)=P(ξt⩽...

2018-06-19 18:38:37

阅读数 2960

评论数 0

HTML5 Canvas实现自动换行和竖排文本

Canvas的渣渣API不支持自动换行和竖排,找了一下没有满意的解决方案,只好自己写一个了。 方法1:根据文字尺寸计算在哪换行 // 画个框用来调试 const DEBUG = true // 画文本,支持多行、自动换行、竖排文字 function drawText (ctx, te...

2018-05-27 23:24:27

阅读数 3227

评论数 0

为了方便在微博上看小黄图,我写了一段JS

微博上有些博主喜欢在发色图时反色防止和谐,但是我又懒得打开PS,于是就想到了用JS自动将图片反色(JS是真的能为所欲为的) 图片处理就用Canvas操作图片数据,把RGB取反就完事了。这里涉及到跨域,还好微博的图床是允许主站CORS的 最后为了操作简单,就监听了打开右键菜单的事件,这样...

2018-05-18 13:58:29

阅读数 11756

评论数 1

获取bilibili直播弹幕的WebSocket协议

我已经写成了Python版弹幕客户端 连接 首先URL中的ID和真正的房间ID不一样,要先请求https://api.live.bilibili.com/room/v1/Room/room_init?id=URL中的ID获取房间ID。返回的是JSON数据,['data']['room_id...

2018-05-14 11:22:30

阅读数 6430

评论数 15

纯JS实现在前端制作GIF表情包的网站

在线制作沙雕图 源码 受到在线生成Sorry动图的启发,也想做一个表情包制作网站。不过这个网站是在后端生成GIF,我觉得这种小程序直接在前端实现就好了,找了一下还真有制作GIF的JS库:omggif和gif.js。 解码模板GIF用omggif: import omggif fr...

2018-04-11 00:02:56

阅读数 4856

评论数 13

tflearn的VocabularyProcessor用法:建立中文词汇表和把文本转为词ID序列

# -*- coding: utf-8 -*- from hanziconv import HanziConv from jieba import cut from tflearn.data_utils import VocabularyProcessor DOCUMENTS = [ ...

2018-03-21 12:28:51

阅读数 5608

评论数 0

tflearn 基于循环神经网络(LSTM)计算文本情感值

修改自官方教程 对于中文文本,可以先用hanziconv把繁体转简体,英文转小写,再用结巴分词把句子转成词序列,根据词汇表转成词ID序列 这个模型我用来分类淘宝的好评、差评,正确率达到了88.7% # -*- coding: utf-8 -*- ""...

2018-03-20 23:35:20

阅读数 734

评论数 0

关于tflearn同时载入多个模型时错误

tflearn同时载入多个模型时会报错:tensorflow.python.framework.errors_impl.NotFoundError: Key XXX not found in checkpoint,大概是某些变量名冲突了 解决方法 from tensorflow import ...

2018-03-18 00:23:18

阅读数 888

评论数 0

pip TypeError: parse() got an unexpected keyword argument 'transport_encoding'

pip install突然出现了这个错误:TypeError: parse() got an unexpected keyword argument 'transport_encoding',其实这是tensorflow的坑,装tensorflow时自动把新版的html5lib卸载了,换成了旧版的...

2018-03-11 16:55:57

阅读数 377

评论数 0

C++/CLI实现inline hook .NET程序

hook .NET程序的难点在于.NET程序都是JIT临时编译的,函数的地址不确定。我翻了一下MSDN,发现可以用RuntimeMethodHandle的GetFunctionPointer获取编译后的函数地址,于是用C++/CLI调用.NET的反射和GetFunctionPointer就可以实现...

2018-01-13 20:10:46

阅读数 1059

评论数 1

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