I hereby claim:
- I am fpom on github.
- I am franckpommereau (https://keybase.io/franckpommereau) on keybase.
- I have a public key whose fingerprint is 053B B213 5F47 3903 1170 F1FC BB39 038C F4F9 96F8
To claim this, I am signing this object:
from collections import deque | |
from browser.aio import Future | |
class QueueEmpty (Exception) : | |
pass | |
class QueueFull (Exception) : | |
pass | |
class Queue (object) : |
GNU LESSER GENERAL PUBLIC LICENSE | |
Version 3, 29 June 2007 | |
Copyright (C) 2007 Free Software Foundation, Inc. <https://fsf.org/> | |
Everyone is permitted to copy and distribute verbatim copies | |
of this license document, but changing it is not allowed. | |
This version of the GNU Lesser General Public License incorporates | |
the terms and conditions of version 3 of the GNU General Public |
import io | |
import token | |
import tokenize | |
NL = None | |
for num, name in token.tok_name.items() : | |
if name == "NL" : | |
NL = num | |
break |
import os, sys, imp | |
def stdimp (name) : | |
cwd = os.getcwd() | |
old = imp.new_module(name) | |
old.__dict__.update(sys.modules[name].__dict__) | |
for path in sys.path : | |
if path == cwd : | |
continue | |
try : |
I hereby claim:
To claim this, I am signing this object:
import numpy as np | |
import colorsys | |
def make_colors (num): | |
"Generate num disting colors as RGB triples" | |
for i in np.arange(0.0, 360.0, 360.0/num): | |
yield colorsys.hls_to_rgb(i/360.0, 0.7, 0.9) |
Install Firefox extension Custom buttons: http://custombuttons.mozdev.org/
Create a new button with the code below:
url = content.document.location loadURI(url.protocol + "//" + url.hostname + ".sci-hub.io" + url.port + url.pathname)
When you hit the paywall, click on the button and enjoy.
# this is for Python 2.x | |
import urlparse | |
from pyquery import PyQuery as pq | |
url = "https://archive.org/details/davidwnivenjazz" | |
doc = pq(url) | |
todo = [] | |
for a in doc("a[href]") : |
# https://archive.org/details/Duke_Ellington_Tape_75_1959_Anatomy_of_a_Murder_Newport_Jazz_Festival_1959 | |
wget --continue -O 'dl/Duke_Ellington_Tape_75_1959_Anatomy_of_a_Murder_Newport_Jazz_Festival_1959.zip' 'https://archive.org/compress/Duke_Ellington_Tape_75_1959_Anatomy_of_a_Murder_Newport_Jazz_Festival_1959' | |
# https://archive.org/details/Lionel_Hampton_Tape_3_1938-1939 | |
wget --continue -O 'dl/Lionel_Hampton_Tape_3_1938-1939.zip' 'https://archive.org/compress/Lionel_Hampton_Tape_3_1938-1939' | |
# https://archive.org/details/Lionel_Hampton_Tape_1_1930-1937 | |
wget --continue -O 'dl/Lionel_Hampton_Tape_1_1930-1937.zip' 'https://archive.org/compress/Lionel_Hampton_Tape_1_1930-1937' | |
# https://archive.org/details/Chet_Baker_Tape_2_1953-1956 | |
wget --continue -O 'dl/Chet_Baker_Tape_2_1953-1956.zip' 'https://archive.org/compress/Chet_Baker_Tape_2_1953-1956' | |
# https://archive.org/details/Frank_Sinatra_Tape_1_1940 | |
wget --continue -O 'dl/Frank_Sinatra_Tape_1_1940.zip' 'https://archive.org/compress/Frank_Sinatra_Tape_1_1940' |
import os.path, codecs | |
import twitter | |
api = twitter.Api(consumer_key="YOUR USER ID HERE", | |
consumer_secret="YOUR SECRET KEY HERE", | |
access_token_key="YOUR TOKEN KEY HERE", | |
access_token_secret="YOUR SECRET TOKEN HERE") | |
if os.path.isfile("followers.dump") : | |
with codecs.open("followers.dump", encoding="utf-8") as infile : |