Edward Snowden answered questions after a showing of CITIZENFOUR at the IETF93 meeting; this is a transcript of the video recording.
For more information, see the Internet Society article.
| (* | |
| Rename with Date 0.1 | |
| Copyright 2004 Mark Nottingham <mnot@mnot.net> | |
| THIS SOFTWARE IS SUPPLIED WITHOUT WARRANTY OF ANY KIND, AND MAY BE | |
| COPIED, MODIFIED OR DISTRIBUTED IN ANY WAY, AS LONG AS THIS NOTICE | |
| AND ACKNOWLEDGEMENT OF AUTHORSHIP REMAIN. | |
| *) |
Edward Snowden answered questions after a showing of CITIZENFOUR at the IETF93 meeting; this is a transcript of the video recording.
For more information, see the Internet Society article.
| #!/usr/bin/env python | |
| """ | |
| RSS.py | |
| Classes for working with RSS channels as arbitrary data structures. | |
| Requires Python 2.2 or newer and PyXML 0.7.1 or newer. | |
| ChannelBase - Base class for RSS Channels. | |
| CollectionChannel - RSS Channel modeled as a URI-per-entry |
| -- Look up document metadata on CrossRef.org in DevonThink 3 | |
| -- | |
| -- Currently sets: | |
| -- * Created date to the document's publication date | |
| -- * Title in document properties | |
| -- * Author in document properties (first author only) | |
| -- * Crossref DOI URL in document properties | |
| -- * A tag for the type of document | |
| -- * Finder comments to a formatted citation (see below) |
| import urllib | |
| import urlparse | |
| def iri_to_uri(iri, encoding='Latin-1'): | |
| "Takes a Unicode string that can contain an IRI and emits a URI." | |
| scheme, authority, path, query, frag = urlparse.urlsplit(iri) | |
| scheme = scheme.encode(encoding) | |
| if ":" in authority: | |
| host, port = authority.split(":", 1) | |
| authority = host.encode('idna') + ":%s" % port |
| from collections import defaultdict | |
| from datetime import datetime | |
| import csv | |
| import sys | |
| __doc__ = """ | |
| This is a script that uses CSV input data (for example, collected by a Google Form) to find the acceptable times for a meeting. | |
| The CSV columns are: |
| from typing import Tuple | |
| def decode_integer(data: bytes) -> Tuple[int, int]: | |
| v = data[0] | |
| prefix = v >> 6 | |
| length = 1 << prefix | |
| v = v & 0x3F | |
| for i in range(1, length): | |
| v = (v << 8) + data[i] |
| #!/usr/bin/env python | |
| """ | |
| Regex for URIs | |
| These regex are directly derived from the collected ABNF in RFC3986 | |
| (except for DIGIT, ALPHA and HEXDIG, defined by RFC2234). | |
| Additional regex are defined to validate the following schemes according to | |
| their respective specifications: |
| #!/usr/bin/env python | |
| # -*- coding: UTF-8 -*- | |
| # Pull links out of a Wikipedia XML dump on STDIN and spit them out on | |
| # STDOUT. | |
| from mwlib.uparser import parseString as parseWikiMarkup | |
| from xml.dom import pulldom | |
| import sys |
| #!/usr/bin/env python3 | |
| """ Use the W3C API to understand what document licenses are in use.""" | |
| import re | |
| import sys | |
| import time | |
| from urllib.parse import urlparse, urlunparse, urljoin | |
| from bs4 import BeautifulSoup, SoupStrainer |