Skip to content

Instantly share code, notes, and snippets.

View yegle's full-sized avatar

Yuchen Ying yegle

  • Google
  • San Francisco Bay Area
View GitHub Profile
@yegle
yegle / main.go
Created December 3, 2024 04:07
qBittorrent: list torrents of which all trackers are failing
package main
import (
"context"
"encoding/json"
"io"
"log"
"net/http"
"strconv"
"time"
@yegle
yegle / example.yaml
Created May 20, 2021 07:55
Blackbox Exporter scraping Transmission BitTorrent Server RPC Example
# Caveat:
# 1. query_response support regex capture group, but you have to write expect/send in the same YAML item.
# 2. When send the "send" line, Blackbox Exporter will automatically add a \n.
transmission_rpc:
prober: tcp
timeout: 30s
tcp:
query_response:
- send: "GET /transmission/rpc/ HTTP/1.1\r\nAuthorization: Basic YOUR_BASIC_AUTH_HEADER\r\n\r"
$ curl -I https://www.autonomous.ai -H 'accept-language: en,zh-CN;q=0.9,zh;q=0.8'
HTTP/2 500
server: nginx
date: Wed, 27 May 2020 06:46:20 GMT
content-type: text/html; charset=utf-8
content-length: 58788
set-cookie: lang=zh-CN; Max-Age=315360000; Path=/; Expires=Sat, 25 May 2030 06:46:20 GMT
access-control-allow-origin: *
access-control-allow-methods: GET, POST, OPTIONS, PUT, PATCH, DELETE
access-control-allow-headers: X-Requested-With,content-type

Keybase proof

I hereby claim:

  • I am yegle on github.
  • I am yegle (https://keybase.io/yegle) on keybase.
  • I have a public key ASA_sLGmpOa5Duyf2sYyu-22gA5UrZf_4dlrv7FG6619FAo

To claim this, I am signing this object:

Keybase proof

I hereby claim:

  • I am yegle on github.
  • I am yegle (https://keybase.io/yegle) on keybase.
  • I have a public key ASDxv0qT6AKb8q38_N-h7bdy-9s5_b1xiwzp54pi6irGxwo

To claim this, I am signing this object:

@yegle
yegle / looping-over-tuple-vs-list.md
Last active July 11, 2019 08:29
Looping over tuple is slightly faster than looping over list

Looping over a tuple is faster than looping over a list in Python2

In Python2:

In [1]: def loop_list():    
   ...:     for i in [1, 2, 3]:                          
   ...:         pass        
   ...:                     

In [2]: def loop_tuple():   
@yegle
yegle / accounts.bean
Created December 1, 2015 06:13
include doesn't work with booking method
2014-09-03 open Assets:Vanguard:VXX VXX "NONE"
2014-09-03 open Expenses:Vanguard:Fee USD
2014-09-03 open Income:Hooli:Paycheck USD
@yegle
yegle / runme.sh
Last active November 30, 2015 00:15
document problem in beancount
#!/usr/bin/env bash
echo "Because gist doesn't support directory"
dir=$(dirname "$0")
mkdir -p "$dir/stmts/Assets/US/BoA"
touch "$dir/stmts/Assets/US/BoA/2015-01-31.statement"
@yegle
yegle / mkdir.sh
Created October 7, 2015 04:24
Create a directory that cannot be deleted in OS X
mkdir -p confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14B---/confdir-14
@yegle
yegle / list_reference_copy.py
Last active August 29, 2015 14:12
Create reference slice to a list in Python
from __future__ import absolute_import
from __future__ import division
from __future__ import print_function
from __future__ import unicode_literals
class MyList(list):
def __init__(self, raw_list, start=None, stop=None):
self.raw_list = raw_list
self.start = start or 0
self.stop = stop or len(raw_list)-1