from olapi import OpenLibrary import simplejson as json from collections import defaultdict from catalog.read_rc import read_rc from catalog.utils.query import query, query_iter, set_staging, base_url from catalog.utils import mk_norm, get_title from six.moves import urllib import six sys.stdout = codecs.getwriter('utf-8')(sys.stdout) set_staging(True) rc = read_rc() ol = OpenLibrary(base_url()) ol.login('EdwardBot', rc['EdwardBot']) re_year = re.compile('(\d{3,})$') queue = [] def iter_works(fields): q = {'type': '/type/work', 'key': None} for f in fields: q[f] = None return query_iter(q) def dates():
from openlibrary.catalog.marc.fast_parse import get_subfield_values, get_first_tag, get_tag_lines, get_subfields from openlibrary.catalog.utils.query import query_iter, set_staging, query from openlibrary.catalog.utils import cmp, mk_norm from openlibrary.catalog.read_rc import read_rc from collections import defaultdict from catalog.utils.edit import fix_edition import urllib from olapi import OpenLibrary, Reference import olapi import six rc = read_rc() ol = OpenLibrary("http://dev.openlibrary.org") ol.login('EdwardBot', rc['EdwardBot']) sys.stdout = codecs.getwriter('utf-8')(sys.stdout) re_skip = re.compile( '\b([A-Z]|Co|Dr|Jr|Capt|Mr|Mrs|Ms|Prof|Rev|Revd|Hon|etc)\.$') base_url = "http://dev.openlibrary.org" query_url = base_url + "/query.json?query=" work_num = 184076 set_staging(True) def withKey(key):
def __init__(self, username, password): self.ol = OpenLibrary() self.ol.login(username, password)
from catalog.get_ia import read_marc_file from catalog.read_rc import read_rc from catalog.marc.fast_parse import get_tag_lines, get_all_subfields, get_first_tag from catalog.marc.new_parser import read_edition from catalog.utils.query import query_iter from catalog.marc.utils import files sys.path.append('/home/edward/src/olapi') from olapi import OpenLibrary, unmarshal import simplejson as json from catalog.importer.load import build_query, east_in_by_statement, import_author rc = read_rc() marc_index = web.database(dbn='postgres', db='marc_index') marc_index.printing = False ol = OpenLibrary("http://openlibrary.org") ol.login('ImportBot', rc['ImportBot']) sys.stdout = codecs.getwriter('utf-8')(sys.stdout) #ocm04775229 re_oclc = re.compile('^oc[mn]0*(\d+)$') def get_keys(loc): assert loc.startswith('marc:') vars = {'loc': loc[5:]} db_iter = marc_index.query('select k from machine_comment where v=$loc', vars) mc = list(db_iter) if mc:
#!/usr/bin/env python from time import localtime, sleep, strftime from olapi import OpenLibrary ol = OpenLibrary() ol.login("someBot", "somePassword") def print_log(msg): timestamp = strftime("%Y%m%d_%H:%M:%S", localtime()) print("[" + timestamp + "] " + msg) def set_identifier(book, id_name, id_value): # OL handles the standard identifiers in a different way. if id_name in ["isbn_10", "isbn_13", "oclc_numbers", "lccn"]: ids = book.setdefault(id_name, []) if id_value not in ids: ids.append(id_value) else: ids = book.setdefault("identifiers", {}) ids[id_name] = [id_value] def set_goodreads_id(olid, goodreads_id): book = ol.get(olid) set_identifier(book, "goodreads", goodreads_id) ol.save(book['key'], book, "Added goodreads ID.")