Skip to content

Instantly share code, notes, and snippets.

from cryptography.hazmat.primitives.ciphers import algorithms, modes, Cipher
from cryptography.hazmat.backends import default_backend
import binascii
# https://github.com/wangyiwy/oktools/blob/133bad6350/static/js/encrypt_des.js
# 参照这个前端网页的Crypto-JS加密结果
# 3DES,ECB,无填充,无iv
# https://www.crypto101.io/
# https://stackoverflow.com/questions/61717485/incorrect-decrypted-string-implemented-using-aes-ecb-nopadding-and-base-64-with
@ficapy
ficapy / ignore_cors.go
Created December 22, 2020 09:32
用nc接收浏览器请求的时候有跨域OPTION请求无法跳过,写了个替代的小脚本
package main
import (
"flag"
"fmt"
"github.com/gin-gonic/gin"
"net/http/httputil"
)
func CORS() gin.HandlerFunc {
@ficapy
ficapy / go_csv.go
Created September 16, 2020 03:21
Python: 60秒 Golang: 3.3秒 Rust: 2.6秒
package main
import (
"encoding/csv"
"github.com/mmcloughlin/geohash"
"github.com/suifengtec/gocoord"
"io"
"os"
)
let a = []
function _add_empty(node, raw){
// 如果多个标签合并成一个,最低保证合并的时候左右存在空格
function inner(node){
let innertext = node.innerText
if (!innertext){
return
}
let content = innertext.trim()
@ficapy
ficapy / full_screen.html
Created June 29, 2020 01:49
Full-Screen Layout using Flexbox http://bl.ocks.org/jfsiii/5380802
<!DOCTYPE html>
<html>
<head>
<meta charset=utf-8 />
<title>Holy Grail</title>
<style>
/* some basic styles. nothing to do with flexbox */
header, footer,
nav, article, aside {
border: 1px solid black;
youtube-dl -v --cookies /Users/ficapy/Downloads/oreilly/cookies.txt -o "Oreilly - %(playlist)s/%(playlist_index)s - %(title)s.%(ext)s" "https://learning.oreilly.com/videos/hands-on-systems-programming/9781838822132"  --add-metadata --write-sub --convert-subs srt --sleep-interval 15 --max-sleep-interval 30 | tee $(date +%Y%m%d-%h:%M).log
@ficapy
ficapy / handle_nested_dict.py
Created May 12, 2020 08:28
临时处理ElasticSearch返回的上十级嵌套
class Nested:
def __init__(self, data):
self.data = data
def __getitem__(self, item):
if self.data is None:
return Nested(None)
if isinstance(item, int) and isinstance(self.data, list):
if len(self.data) >= item:
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 72
On-line CPU(s) list: 0-71
Thread(s) per core: 2
Core(s) per socket: 18
Socket(s): 2
NUMA node(s): 2
Vendor ID: GenuineIntel
fn apply<F>(mut f: F)
where
F: FnMut(),
{
f();
f();
}
fn main() {
let mut farewell = "goodbye".to_owned();