Skip to content

Instantly share code, notes, and snippets.

View borgle's full-sized avatar

波哥 borgle

View GitHub Profile
@borgle
borgle / bottle-websocket-example.py
Last active September 27, 2017 08:18
采用 bottle, bottle-websocket 的一个小 demo
#coding: utf-8
import sys, time, json
reload(sys)
sys.setdefaultencoding('utf-8')
from bottle.ext.websocket import GeventWebSocketServer
from bottle.ext.websocket import websocket
from bottle import get, run
@borgle
borgle / IsMergeablePlugin.java
Last active September 25, 2017 01:14
Java code 模式的 mybatis-generator 生成代码模板,采用自定义插件方式选择性覆盖 xxxMapper.xml 文件
package MybatisPlugins;
import org.mybatis.generator.api.GeneratedXmlFile;
import org.mybatis.generator.api.IntrospectedTable;
import org.mybatis.generator.api.MyBatisGenerator;
import org.mybatis.generator.api.PluginAdapter;
import org.mybatis.generator.config.Configuration;
import org.mybatis.generator.config.xml.ConfigurationParser;
import org.mybatis.generator.internal.DefaultShellCallback;
@borgle
borgle / run.py
Last active March 30, 2017 07:57
bottle sample code & module seperated & beaker sesson middleware
#!/usr/bin/env python
# coding:utf-8
__version__ = '1.0.0'
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
@borgle
borgle / cmdQrcode.py
Last active May 1, 2017 16:52
命令行输出二维码内容
#coding: utf-8
import io, os, sys, platform
import requests, wcwidth
from PIL import Image
def PrintCmdQrcode(qrText):
'''print qrcode in cmd
see also https://github.com/xrdavies/qqbot/commit/21a91099db23b62898fbbcbd7a2e0d5af89ad0d8
'''
@borgle
borgle / preinstall-scrapy-cluster.py
Last active August 15, 2017 10:23
测试scrapy-cluster需要的环境安装脚本,一键安装openjdk, zookeeper, kafka, redis。 redis是需要本地编译的,请提前安装gcc
#!/usr/bin/env bash
if [ -n "${SUDO}" ]; then
echo "ERROR: Please run as root"
exit 1
fi
# === pip install ===
curl https://bootstrap.pypa.io/get-pip.py | python
@borgle
borgle / crawler.py
Created March 17, 2017 18:29
一个最基本的多线程抓取页面代码
#coding: utf-8
import struct
import requests,json,random
from gevent import monkey, spawn
monkey.patch_all()
proxies = {'all': 'http://127.0.0.1:8087'}
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/168 Safari/537.36',
@borgle
borgle / install.sh
Created March 15, 2017 09:06
很多时候,团队内每个人都需要测试环境,如果大家都在测试环境上随意捣鼓,那么tomcat, mongodb, redis, zookeeper将是一团麻,这个脚本就是方便大家进行环境初始化和测试的
#!/bin/bash
# global variable
SVR_PORT=0
RUN_USER=$USER
BIN_DIR=$HOME/bin
# resolve links - $0 may be a softlink
ARG0="$0"
while [ -h "$ARG0" ]; do
@borgle
borgle / random_example.py
Created March 14, 2017 02:42
Python 随机大集合,要善于利用 string 里面的常量(ascii_letters, ascii_lowercase, ascii_uppercase, letters, digits, hexdigits, octdigits),减少代码量。
import random, string
# number
number = random.randint(1, 9)
# char
char = chr(random.randint(65, 90))
char = random.choice(string.ascii_letters)
# string
@borgle
borgle / centos7-pptp.sh
Last active August 23, 2018 06:40 — forked from yyang/centos7.sh
centos 7 pptpd firewalld
#!/bin/sh
#
# pptpd installation script on my own CentOS 7 box.
# inspired by: https://www.digitalocean.com/community/questions/how-to-install-pptp-vpn-on-centos-7
# and http://unix.stackexchange.com/questions/150837/redhat-centos-7-firewalld-best-practice-for-pptp-or-l2tp-ipsec-rules
#
# Author: 2015 Steve Yang <me@iyyang.com>
# The script comes with ABSOLUTELY NO WARRANTY.
@borgle
borgle / relation.txt
Created August 31, 2016 06:38
relation
     祖 祖                       外   外
                               祖   祖
     母 父                       父   母
     │ │                       │   │
     └┬┘                       └─┬─┘
┌───┬─┴─┬──────────┐       ┌─────┴───┬───┐
│   │   │          │       │         │   │
姑 姑 嬸 叔 伯 伯        父       母         舅 舅 姨 姨
丈 媽 嬸 父 母 父        親       親         舅 媽 媽 丈