Skip to content

Instantly share code, notes, and snippets.

View tribela's full-sized avatar
😺
😼

Jeong Arm tribela

😺
😼
View GitHub Profile
@tribela
tribela / 404
Last active March 7, 2019 08:20
Captive portal CGI
#!/bin/sh
cat << EOF
Status: 302 Temporary Redirect
Location: /cgi-bin/auth
Cache-Control: no-cache
<!doctype html>
<html>
<head>
@tribela
tribela / index.html
Last active August 29, 2015 14:19
Hex editor clock
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<link rel="stylesheet" href="style.css" type="text/css" media="all" charset="utf-8">
<script src="script.js" type="text/javascript"></script>
<title>Hex editor</title>
</head>
<body>
@tribela
tribela / bandcamp.py
Last active November 7, 2015 07:59
bandcamp album downloader
import Queue
import json
import os
import re
import sys
import threading
import urllib2
from contextlib import closing
URL_FORMAT = 'http://{0}.bandcamp.com/{1}/{2}'
@tribela
tribela / custom_topo.py
Last active August 29, 2015 14:13
Mininet custom topologies
from mininet.topo import Topo
class RingTopo(Topo):
def __init__(self, switch_count=4, host_count=1):
Topo.__init__(self)
switches = [self.addSwitch('s{0}'.format(i+1))
for i in range(switch_count)]
import os
import sys
from PIL import Image
def dhash(image, hash_size=8):
image = image.convert('L').resize(
(hash_size + 1, hash_size),
Image.ANTIALIAS)
diff = []
@tribela
tribela / gist:6a044c733e43ffb629b6
Created July 27, 2014 14:15
Proxy is poisoned
data:text/javascript,function%20FindProxyForURL(url%2C%20host)%20%7Bif%20(shExpMatch(url%2C%20'http%3A%2F%2Fplay.spotify.com*')%20%7C%7C%20shExpMatch(url%2C%20'https%3A%2F%2Fplay.spotify.com*')%20%7C%7C%20shExpMatch(url%2C%20'https%3A%2F%2Fwww.spotify.com*')%20%7C%7C%20shExpMatch(url%2C%20'http%3A%2F%2Fwww.spotify.com*')%20%7C%7C%20shExpMatch(url%2C%20'http%3A%2F%2Fwww.crunchyroll.com*')%20%7C%7C%20host%20%3D%3D%20'www.pandora.com'%20%7C%7C%20shExpMatch(url%2C%20'http%3A%2F%2Fwww.last.fm*')%20%7C%7C%20shExpMatch(url%2C%20'http%3A%2F%2Fext.last.fm*')%20%7C%7C%20(url.indexOf('proxmate%3Dactive')%20!%3D%20-1%20%26%26%20url.indexOf('amazonaws.com')%20%3D%3D%20-1)%20%7C%7C%20(url.indexOf('proxmate%3Dus')%20!%3D%20-1)%20%7C%7C%20shExpMatch(url%2C%20'http%3A%2F%2Fpiki.fm*')%20%7C%7C%20shExpMatch(url%2C%20'https%3A%2F%2Fpiki.fm*')%20%7C%7C%20shExpMatch(url%2C%20'http%3A%2F%2Fgrooveshark.com*')%20%7C%7C%20shExpMatch(url%2C%20'http%3A%2F%2Fretro.grooveshark.com*')%20%7C%7C%20shExpMatch(url%2C%20'http%3A%2F%2Fhtml5.groo
# coding:utf-8
from contextlib import closing
from six.moves import urllib
from lxml import html
indexes = [
u'ㄱ', u'ㄴ', u'ㄷ', u'ㄹ', u'ㅁ', u'ㅂ', u'ㅅ', u'ㅇ', u'ㅈ', u'ㅊ', u'ㅋ',
u'ㅌ', u'ㅍ', u'ㅎ',
u'0',
u'A', u'B', u'C', u'D', u'E', u'F', u'G', u'H', u'I', u'J', u'K', u'L',
// ==UserScript==
// @name Facebook autopoke
// @namespace Kjwon15
// @description Facebook auto revenge poke
// @include http://*.facebook.com/pokes*
// @include https://*.facebook.com/pokes*
// ==/UserScript==
auto_poke=function(){
if (document.location.pathname.startsWith('/pokes') === false) {
require 'net/http'
require 'uri'
Earthquake.init do
output_filter do |item|
next unless item['text']
text = item["text"]
text.scan( /http:\/\/t\.co\/[a-zA-Z0-9\-]+/ ).each do |url|
uri = URI.parse url
Net::HTTP::start( uri.host , uri.port ) do |connection|
connection.request_get uri.path do |response|
@tribela
tribela / prompt.rb
Created February 20, 2014 02:48
ruby readline while printing
# encoding: UTF-8
require "EventMachine"
require "readline"
prompt = '⚡ '
def mutex
@mutex || Mutex.new
end