Skip to content

Instantly share code, notes, and snippets.

View kognate's full-sized avatar

Joshua Smith kognate

  • Pittsburgh, PA
View GitHub Profile
@kognate
kognate / reformulator.py
Last active January 30, 2020 02:35
dict reformulator
from typing import Dict, List
from itertools import chain
to_convert = {
"someCommonKey": 123,
"listOne": ["foo", "bar", "baz"],
"listTwo": ["lorem", "ipsum", "doler"],
"listThree": ["jorem", "jpsum", "joler"],
}
ignore = ["someCommonKey"]
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@kognate
kognate / rounder.py
Last active September 19, 2019 17:52
import decimal as d
from typing import Dict
def round_costs(cost_datum: Dict[str, object]) -> Dict[str, object]:
cd_copy = {}
for key, value in cost_datum.items():
if isinstance(value, float):
quantized = d.Decimal(value).quantize(
d.Decimal("0.01"), rounding=d.ROUND_05UP

Keybase proof

I hereby claim:

  • I am kognate on github.
  • I am kognate (https://keybase.io/kognate) on keybase.
  • I have a public key ASBwv28bevtm-rK-L2wgk5Qc2yPlzzStPnUAxeFaTnwgGwo

To claim this, I am signing this object:

from unittest import TestCase
from unittest.mock import patch
from email.mime.text import MIMEText
import os
import smtplib
def send_email(email_from, email_to, email_subject, email_msg):
with smtplib.SMTP(os.getenv('SMTP_SERVER','localhost')) as smtpObj:
import Kitura
import SwiftyJSON
// Create a new router
let router = Router()
router.all("/run", middleware: BodyParser())
router.post("/run") { request, response, next in
guard let parsedBody = request.body?.asJSON else {
FROM python:3-alpine
RUN pip install feedparser
RUN pip install flask
ADD my_script.py /
ADD owaction.py /
EXPOSE 5000
CMD [ "python", "./my_script.py" ]
from lxml.cssselect import CSSSelector
import lxml.html
import requests
import re
id_finder = re.compile('\/id([0-9]+)')
def extract_id(linkstr):
mid = id_finder.search(linkstr)
if mid:
let isInRange = function(date) {
return moment().subtract(60,'d') < date && moment().add(1,'m') > date;
}
let isOutOfRange = function(date) {
return !isInRange(date);
}
@kognate
kognate / discovery_config_fetch.py
Created December 22, 2016 14:15
I've add the source and a python notebook to get a config from discovery using the python sdk (version 0.23 has discovery)
import watson_developer_cloud
DISCOVERY_USERNAME='CHANGE_ME'
DISCOVERY_PASSWORD='CHANGE_ME'
ENVIRONMENT_NAME='CHANGE_ME'
CONFIGURATION_NAME='CHANGE_ME'
discovery = watson_developer_cloud.DiscoveryV1(
'2016-12-15',
username=DISCOVERY_USERNAME,