Skip to content

Instantly share code, notes, and snippets.

View upbit's full-sized avatar

Zhou Hao upbit

  • China
View GitHub Profile
@upbit
upbit / README.md
Last active March 27, 2024 00:29 — forked from ZipFile/README.md
Pixiv OAuth Flow (with Selenium)

Retrieving Auth Token (with Selenium)

  1. Setup, install Selenium/ChromeDriver
pip install selenium
# download chromedriver from https://chromedriver.storage.googleapis.com/index.html?path=91.0.4472.101/
# eg: wget https://chromedriver.storage.googleapis.com/91.0.4472.101/chromedriver_mac64.zip && unzip chromedriver_mac64.zip
import math
import os
import sys
import traceback
import modules.scripts as scripts
import gradio as gr
from modules.processing import Processed, process_images, fix_seed
@upbit
upbit / lldb_debug.sh
Created March 30, 2015 15:24
lldb远程调试
on iOS:
/Developer/usr/bin/debugserver *:1234 -a "RankingLog"
on Mac:
lldb
(lldb) platform select remote-ios
(lldb) process connect connect://192.168.1.100:1234
【lldb命令】
@upbit
upbit / jsonp-proxy.py
Created July 1, 2020 10:51 — forked from netj/jsonp-proxy.py
A primitive JSON-P proxy in Python compatible to node-jsonp-proxy (support python3)
#!/usr/bin/env python
# A very primitive JSON-P proxy in Python
# Derived from Patric Fornasier's Blog: http://patforna.blogspot.com/2009/03/jsonp-proxy-server.html
# Made compatible with node-jsonp-proxy: https://github.com/clintandrewhall/node-jsonp-proxy
import sys
import re
import urllib
if sys.version_info >= (3, 0):
from http.server import BaseHTTPRequestHandler, HTTPServer
@upbit
upbit / filter.go
Created May 12, 2020 03:49
Filter API中对象池的
// Filter 注册的filter,用于在server端过滤数据并提供高性能查询
type Filter struct {
KeyFileds []string
FilterStr string // 更新无极数据时用到的,注册的filter条件
Template interface{} // 返回数据类型模板
// objStore 用于Filter后数据的存储
objStore map[string]interface{}
objStoreMutex *sync.RWMutex
dataVersion int // 当前内存中无极数据的版本
stat *Stat
@upbit
upbit / maps.go
Created May 7, 2020 02:53
GC pause for maps
package main
import (
"fmt"
"os"
"runtime"
"time"
)
// Results of this program on my machine: (macos, go 1.14):
import time
class Timer(object):
def __init__(self, verbose=False):
self.verbose = verbose
def __enter__(self):
self.start = time.time()
return self
def chunks(l, n):
"""Yield successive n-sized chunks from l."""
for i in range(0, len(l), n):
yield l[i:i + n]
@upbit
upbit / HowTo.md
Last active October 8, 2018 10:49
XCode codesign on jailbreak devices

修改XCode配置文件

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/

SDKSettings.plist

> CODE_SIGNING_REQUIRED: NO
> ENTITLEMENTS_REQUIRED: NO
const letterBytes = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
const (
letterIdxBits = 6 // 6 bits to represent a letter index
letterIdxMask = 1<<letterIdxBits - 1 // All 1-bits, as many as letterIdxBits
letterIdxMax = 63 / letterIdxBits // # of letter indices fitting in 63 bits
)
func RandStringBytesMaskImpr(n int) string {
b := make([]byte, n)
// A rand.Int63() generates 63 random bits, enough for letterIdxMax letters!