Skip to content

Instantly share code, notes, and snippets.

View xiangzhuyuan's full-sized avatar
🤗

Mathew P. Jones xiangzhuyuan

🤗
View GitHub Profile
ActionDispatch::Routing::RoutesInspector.new(Rails.application.routes.routes).format(ActionDispatch::Routing::ConsoleFormatter.new).split("\n")
@xiangzhuyuan
xiangzhuyuan / unsub_all_youtube_channel.js
Created June 23, 2019 13:43
just run code in console by one click
(function(){
var btns = document.getElementsByTagName('button');
for (var i = 0; i < btns.length; i++) {
if (btns[i].dataset.isSubscribed == "True") {
if (!!btns[i].dataset.showUnsubConfirmDialog) {
delete btns[i].dataset.showUnsubConfirmDialog;
}
btns[i].click();
}
}
@xiangzhuyuan
xiangzhuyuan / gist:32e146fbb667429c037774904bbff035
Created February 11, 2019 13:17
Get latest campaign without afli
require 'net/http'
require 'uri'
require 'cgi'
require 'byebug'
require 'nokogiri'
require 'yaml'
uri = URI.parse("https://blog.cbnanashi.net/2018/10/5575/comment-page-5")
request = Net::HTTP::Get.new(uri)
request["Authority"] = "blog.cbnanashi.net"
@xiangzhuyuan
xiangzhuyuan / bulk_download_garmin_fit.sh
Created September 21, 2018 08:50
try to bulk download fit file from garmin portal
#!/bin/bash
#var s ='';$("#activity-name-edit > a").each(function(){s+=$(this).attr('href').split('/')[3]; s+="\n";});console.log(s)
ids='3031291759 3031291483 3031291242 3031291096 3031290952 3023644256 3022933525 3017780038 3017658434 3013372497 3009179215 3007461440 3005419661 3004834235 3004833926 2994827251 2994213912 2992526210 2991711451 2989717745'
for id in $ids
do
echo "https://connect.garmin.com/modern/proxy/download-service/files/activity/$id"
curl "https://connect.garmin.com/modern/proxy/download-service/files/activity/$id" -H 'authority: connect.garmin.com' -H 'cache-control: max-age=0' -H 'upgrade-insecure-requests: 1' -H 'dnt: 1' -H 'user-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36' -H 'accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8' -H 'referer: https://connect.garmin.com/modern/activities' -H 'accept-encoding: gzip, deflate, br' -H 'accept-language: zh-CN,

Keybase proof

I hereby claim:

  • I am xiangzhuyuan on github.
  • I am xiangzhuyuan (https://keybase.io/xiangzhuyuan) on keybase.
  • I have a public key ASA41VFjieEA2WWx2Dtki1d3Yow0ELUp1sZoVsbHkjplUQo

To claim this, I am signing this object:

@xiangzhuyuan
xiangzhuyuan / 2gif.sh
Created November 26, 2017 12:41
simply ffmpeg to get gif
2gif () {
ffmpeg -i $1 -b 2048k ~/Desktop/$(basename $1).gif
}
@xiangzhuyuan
xiangzhuyuan / SingleForwardable_example.rb
Created October 16, 2017 12:56
#SingleForwardable の使用例 # #ここでは、SingleForwardable の使用例として、委譲を使って出力機能を実現する例を紹介します。この例も RDoc から持って来ました*3。 # #例では、String クラスのインスタンスに対して、puts メソッドを STDOUT オブジェクトに委譲しています。
require 'forwardable'
printer = String.new
printer.extend SingleForwardable # 委譲するオブジェクトの準備
printer.def_delegator "STDOUT", "puts" # STDOUT.puts() への委譲を定義
printer.puts "Howdy!"
#実行すると標準出力に「Howdy!」と出力されます。
@xiangzhuyuan
xiangzhuyuan / forwardable_example.rb
Created October 15, 2017 12:41
forwardable_example.rb
require 'forwardable'
## MyQueue クラスの定義
class MyQueue
extend Forwardable
def initialize
@q = [] # 委譲するオブジェクトの準備
end
@xiangzhuyuan
xiangzhuyuan / ruby_str_remove_allwhitespace.md
Created August 17, 2017 02:48
ruby string remove all whitespace