Skip to content

Instantly share code, notes, and snippets.

Daniel Oaks DanielOaks

Block or report user

Report or block DanielOaks

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
@DanielOaks
DanielOaks / library_extension_adder.py
Created Apr 16, 2014
Adds the correct extension to a provided library path
View library_extension_adder.py
# platform library extension adder for Python or something
import os
import sys
__PLATFORM_LIBRARY_EXTENSIONS = {
'windows': 'dll',
'darwin': 'dylib',
'linux': 'so',
}
@DanielOaks
DanielOaks / simple_irc.py
Created Oct 12, 2014
Berend's simple IRC bot, extended
View simple_irc.py
#!/usr/bin/env python3
# Test IRC Client
# Based on http://hawkee.com/snippet/9725/
import os
import socket
import traceback
# settings
nick = 'bython'
@DanielOaks
DanielOaks / m_fuzz4.c
Created Oct 20, 2014
ircfuzz for plexus4
View m_fuzz4.c
/************************************************************************
* IRC - Internet Relay Chat,
* Copyright (C) 2001 Hybrid Development Team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 1, or (at your option)
* any later version.
*
* This program is distributed in the hope that it will be useful,
@DanielOaks
DanielOaks / basc_4chan_archiver_refactor.py
Created Nov 15, 2014
Discussion/coding for the 4chan archiver I had with @antonizoon
View basc_4chan_archiver_refactor.py
# Archiver options object proposal
""" might only need to be an Archiver constructor now?
not sure, how do you mean exactly?
as I see it, the main reason to make the Options class is to simplify things internally
like passing options between the Archiver and the SiteArchivers (or whatever we do to support 4chan/Fuuka/etc)
I can certainly see doing it like that, but even then I think we'd be creating an Options object internally. Definitely different files, but subclassing from a standard BaseSiteArchiver or something similar, so those objects have the same API to the controlling Archiver object (and can be used as a simple list to iterate over, below in add_thread and download_threads)
well, that make sense. True, that would really help to have a unified GUI.
I might start playing about with refactoring the repo
probably want to create a brand new repo, since we wrote from scratch anyway, name it BASC_Archiver
sure, I'll be reusing lots of code from BA-4chan-thread-archiver as
@DanielOaks
DanielOaks / bottle-cherry-ssl-test.py
Created Nov 30, 2014
BottlePy + CherryPy SSL Test
View bottle-cherry-ssl-test.py
#!/usr/bin/env python
# written by Daniel Oaks <daniel@danieloaks.net>
# generate ssl key/cert in the same dir as this script with the following commands:
# openssl genrsa -out privkey.pem 2048
# openssl req -new -x509 -days 365 -key privkey.pem -out cert.pem
import os
import bottle
import traceback
@DanielOaks
DanielOaks / nsp.py
Created Mar 2, 2015
Numeric String Parser using PyParsing, based off arith.py
View nsp.py
# Numeric String Parser
# See license text in pyparsing.py
# Modifications by Daniel Oaks, same license
#
# Comply more strictly with PEP8, traditional Python style.
# Add PI and E constants.
# Add sin, cos, etc functions.
# Add power ops, ^ and **
# Split out multMap, compMap, etc for better extensibility.
@DanielOaks
DanielOaks / nodelist.py
Created Mar 10, 2015
Just an example nodelist function for networkx graphs. Works great, though it got factored out of my function
View nodelist.py
def nodelist(network):
"""Returns a drawable nodelist (for the concentric circle-based drawing functions of networkx)."""
# first off, find most largestly connected (hub) server for the center
center = nx.center(network)
center = center[0] # returns a list of centers, and we don't want that
# and create the layers off that
added_nodes = [center,]
View ficsave-to-latex.py
#!/usr/bin/env python3
# Given an ePub file from FicSave, generates LaTeX files
# Written by Daniel Oaks, released under the ISC license
__doc__ = """Make-LaTeX.
Given an ePub file from FicSave, generates LaTeX files.
Usage:
make-latex <name> [options]
make-latex -h | --help
@DanielOaks
DanielOaks / UserscriptCompatability.js
Created Oct 27, 2012
Allows userscript files to work both as Greasemonkey scripts, and as BabelExt extensions
View UserscriptCompatability.js
// Basically, dynamically selects between BabelExt and Greasemonkey methods,
// depending on what is avalaible at runtime
//
// Simply put this at the top of your userscript, and use BE_set/getValue
// exactly as you would BabelExt.storage.set/get
//
// However, there is also another argument passed to getValue, def, as in the
// default value if none can be retrieved (as in Greasemonkey's GM_getValue)
function BE_setValue(key, val, callback) {
View irc2-makegit.py
#!/usr/bin/env python3
# ircd git generation from archive files
# like irc2.1.1.tar.Z
# code
import os
import shutil
import gitapi
import tarfile
from version import LooseVersion
You can’t perform that action at this time.