Skip to content

Instantly share code, notes, and snippets.

@nicholasserra
nicholasserra / appleicon.py
Created January 20, 2012 02:34
Apple Icon url scraper
from BeautifulSoup import BeautifulSoup
import urllib2
import re
def grab_apple_icon(url):
def scrape(url):
print 'start scrape '+url
#scrape page for link rel to icon
#fake iphone user agent
@nicholasserra
nicholasserra / gist:2563642
Created April 30, 2012 23:34
Htaccess for 528
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} !blog.nickserra.com$ [NC]
RewriteRule ^(.*)$ http://blog.nickserra.com/$1 [L,R=301]
from django.test import Client
import simplejson as json
class JsonBaseClient(Client):
"""
Add content_json to response object from client.
"""
def get(self, path, data={}, **extra):
@nicholasserra
nicholasserra / gist:3990025
Created October 31, 2012 21:31
Tastypie full response cache class
from django.core.cache import cache
from tastypie.resources import ModelResource
class ResponseCacheResource(ModelResource):
"""
Tastypie response cached resource.
Caches full responses on detail and list views
using Resource.Meta.cache_key.
Does no invalidation, just quick raw caching
from django.core.cache.backends.memcached import BaseMemcachedCache
class UltraMemcachedCache(BaseMemcachedCache):
"An implementation of a cache binding using python-ultramemcached"
def __init__(self, server, params):
import ultramemcache
super(MemcachedCache, self).__init__(server, params,
library=ultramemcache,
value_not_found_exception=ValueError)
Array
(
[ok] => ASSEMBLY_COMPLETED
[message] => The assembly was successfully completed.
[assembly_id] => 30c97c5886ea629c7a2b3924b11aa658
[assembly_url] => http://api2.mahek.transloadit.com/assemblies/30c97c5886ea629c7a2b3924b11aa658
[bytes_received] => 27903
[bytes_expected] => 27903
[client_agent] => Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_2) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.56 Safari/537.17
[client_ip] => 127.0.0.1
@nicholasserra
nicholasserra / vim.sh
Last active December 14, 2015 00:29
vim plugins and .vimrc
#!/bin/bash
# grab vim plugins and write .vimrc
# this will probably overwrite current vim setup
# curl https://gist.githubusercontent.com/nicholasserra/4999143/raw/6e2fab00a9f39f659e3cfc39e26d997e3299eaeb/vim.sh | bash
echo "Make .vim dir structure"
mkdir -p ~/.vim/autoload ~/.vim/bundle;
echo "Grab vim-pathogen"
curl -Sso ~/.vim/autoload/pathogen.vim https://raw.github.com/tpope/vim-pathogen/master/autoload/pathogen.vim
@nicholasserra
nicholasserra / base64ConsoleEmailBackend.py
Created May 11, 2013 19:39
Console email backend decoding base64 payloads
import sys
import threading
import base64
from django.core.mail.backends.base import BaseEmailBackend
class EmailBackend(BaseEmailBackend):
def __init__(self, *args, **kwargs):
self.stream = kwargs.pop('stream', sys.stdout)
self._lock = threading.RLock()
@nicholasserra
nicholasserra / dummyhasher.py
Last active December 17, 2015 07:29
Dummy password hasher for django tests
from django.contrib.auth.hashers import BasePasswordHasher
from django.utils.crypto import constant_time_compare
from django.utils.translation import ugettext_noop as _
from django.utils.datastructures import SortedDict
class DummyPasswordHasher(BasePasswordHasher):
"""
A dummy plaintext password hashing algorithm (not recommended)
"""
from django.contrib.staticfiles.urls import staticfiles_urlpatterns
urlpatterns = patterns('',
url(r'^admin/', include(admin.site.urls)),
url(r'^api/', include(v1_api.urls))
)
#Use django to serve static when in development environment.
urlpatterns += staticfiles_urlpatterns()