月度归档:2019年06月

letsencrypt https证书自动更新和续期(支持泛域名)

https://github.com/tengattack/certbot-dns-aliyun

获取证书

certbot certonly -a certbot-dns-aliyun:dns-aliyun \
    --certbot-dns-aliyun:dns-aliyun-credentials aliyun.ini \
    -d c4ys.com \
    -d *.c4ys.com

更新证书

certbot renew

自动重新加载nginx(需要更新成功后,所以等前一个任务进行几分钟之后再执行)

nginx -s reload

基于微信的一些开源工具

Android -Xposed

项目地址:https://github.com/weechatfly/wtoolsdkrobot

项目简介:有趣的微信机器人,基于Xposed

开发语言:Java

项目地址:https://github.com/weechatfly/wtoolsdkroomlive/

项目简介:有趣的微信转发程序,用于微信群直播

开发语言:Java

项目地址:https://github.com/chaojimiaomiao/colorful_wechat

项目简介:微信美化插件,开发者是个大美女

项目地址:https://github.com/geeeeeeeeek/WeChatLuckyMoney

项目简介:微信抢红包外挂插件

开发语言:Java

WEB

项目地址:https://github.com/lu4kyd0y/WeChat-Cloud-Robot

项目简介:基于网页版的微信机器人

开发语言/框架:python

项目地址:https://github.com/sjdy521/Mojo-Weixin

项目简介:基于网页版的微信WEB版协议框架,可用于IRC转发

开发语言:Python

IOS-TWEAK

项目地址:https://github.com/cocos543/WeChatTimeLineRobot

项目简介:朋友圈自动点赞评论机器人

开发语言:C++

MacOSX-Tweak

项目地址:https://github.com/Sunnyyoung/WeChatTweak-macOS

项目简介:Mac微信多开及防撤回插件

开发语言:Objective-C

协议

Tencent/mars

Mars is a cross-platform network component developed by WeChat.

https://github.com/Tencent/mars

WeChatXY

微信ipad协议源码,可实现微信80%功能。支持62数据登录、扫码登录、收发朋友圈、查看朋友圈、微信建群、微信拉人进群、微信公众号阅读、微信消息收发、微信附近的人定位、微信添加好友、微信红包接收、微信防撤回、分享小程序、微信加粉、微信收藏、微信标签等。请联系qq:929918989

https://github.com/weixinbao/WeChatXY

PadChat-SDK

永久免费 微信ipad、微信mac协议,可实现微信80%功能;支持62数据登录、扫码登录、收发朋友圈、查看朋友圈、微信建群、微信拉人进群、微信公众号阅读、微信消息收发、微信附近的人定位、微信添加好友、微信红包接收、微信防撤回、分享小程序、微信加粉、微信收藏、微信标签等

https://github.com/AvengersWeChat/PadChat-SDK

PyMicroChat

https://github.com/fatesinger/PyMicroChat

MicroChat

使用腾讯微信Mars跨平台通信库实现模拟微信App通信

https://github.com/FlyingGlass/MicroChat

WeChatProtocolStudy

微信协议研究,实现基于Android/MAC/IPAD协议的PC客户端

https://github.com/214175590/WeChatProtocolStudy

SDK

Chatie/wechaty

wechaty-puppet-puppeteer - Angular Hook for Web Wechat <- This is the DEFAULT
wechaty-puppet-wechat4u - HTTP API for Web Wechat
wechaty-puppet-padchat - iPad App Protocol
wechaty-puppet-ioscat - iPhone App Hook
wechaty-puppet-mock - Mock for Testing

https://github.com/Chatie/wechaty

Python进入交互模式4种方法

使用python -i参数

添加-i参数

python -i myapp.py

使用code.interact()

    import code
    # before
    code.interact()
    # after

使用pdb lib

for thing in set_of_things:
    import pdb;
    pdb.set_trace()
    do_stuff_to(thing)

使用IPython embed

from IPython import embed

for thing in set_of_things:
  embed()
  do_stuff_to(thing)

忘读读书法

有没有一种(功利的)读书法,读得快但是效果又最好?

进过不懈的努力,这个读书法被我发现了,就是“忘读读书法”。

这个方法类似张三丰教张无忌的太极神功,强调一个“忘”字。

方法原理:为什么是“忘”?我们相信:

  • 记住几个关键词,比记住整本书要容易得多
  • 记住当前最有效的部分并行动,比按照整本书去行动可行性更高
  • 书本的价值在于你利用多少,而不在于你知道多少

方法步骤:

  • 找到一步本书进行阅读,阅读的时候思考当前阅读的内容是否有新的观点,这个观点是否能够作为自己未来的人生信条和行为纲领,如果不是则忘掉,如果是则标记,这样读完;(因为一本书能够作为信条和纲领的比较少,所以能很快读完)
  • 重新阅读标记部分,提炼成几个关键字,根据关键字形成自己的关键字理解笔记(理解归纳,便于形成自己观点)
  • 将关键字作为自己未来的人生信条和行为纲领(学以致用)

《马云:未来已来》读后感 – 担当、乐观与坚持

担当

有担当才有未来,担当是个人和企业的对人类未来的价值和意义,担当能保证方向正确

  • 一家伟大的公司,必须解决社会问题
  • 企业家要思考十年之后的事
  • 如果地球病了,没有人会健康
  • 公益的本质是唤醒善良
  • 我相信,要改变世界,先改变自己,改变自己比改变世界更重要,也更简单。然后,我想改善世界。

乐观

机会就在被抱怨的地方,人类只要还存在不满,就不会停止进步,我们就还有机会

  • 机会就在被抱怨的地方
  • 所谓改革就是改革自己

坚持

三十年后不忘初心,就是成功

  • 少一些抱怨,多一些坚持
  • 三十年后不忘初心,就是成功
  • 一家企业没有经历过残酷时代,经不起风浪
  • 在阳光灿烂的日子修屋顶,年轻力壮的的时候生孩子
  • 晚上想想千条路,早上醒来走原路

Imagick给图片加文字和二维码

    // 初始化画布
    set_time_limit(0);
    $bg_file = Yii::getAlias('@frontend/web/test/wxbg.jpg');
    $image = new \Imagick($bg_file);

    // 写字
    $font_file = Yii::getAlias('@frontend/web/test/msyhbd.ttc');
    $draw = new \ImagickDraw();
    $draw->setFillColor('#FF7F24');
    $draw->setFont($font_file);
    $draw->setFontSize(64);
    $draw->setTextKerning(5);
    $draw->setFontWeight(700);
    $draw->setTextEncoding('UTF-8');
    $metrics = $image->queryFontMetrics($draw, $name);
    $draw->annotation(158, 50 + $metrics['ascender'], $name);
    $image->drawImage($draw);

    // 二维码
    $qr_image = new \Imagick(Yii::getAlias('@frontend/web/test/qr.png'));
    $qr_image->scaleImage(248, 248);
    $image->compositeImage($qr_image, \Imagick::COMPOSITE_COPY, 254, 504);

    // 返回
    $response = Yii::$app->getResponse();
    $response->format = Response::FORMAT_RAW;
    $response->headers->set('Content-Type', 'image/jpeg');
    $response->data = $image->getImageBlob();
    return $response->send();

Yii2按需加载js,css文件,并自动加上时间戳

网上找遍了国内和国外的资料,没有能够为动态增加的文件加上时间戳的,进过分析Yii2源码,发现其实非常简单:

开启assetManager支持自动加上时间戳

修改main.php

    'assetManager' => [
        'appendTimestamp' => true,
    ],

按需加载js,css

$bundle=AppAsset::register($this);
$bundle->js[]='js/windowview.js';
$bundle->css[]='css/robot.css';