# gcis-isbn-validator Scripts used to validate and clean up ISBN formats in GCIS-DEV. What this script does? ===================== *"isbn-validator-post"* is used to **ONLY** extract, clean, and repost onto GCIS-DEV Details: 1. Accepts Gcis.conf credentials as command line argument [example: https://metacpan.org/pod/Gcis::Client#CONFIGURATION] 2. Parses metadata from GCIS-DEV into a JSON dictionary 3. Extracts the "isbn" key from the dictionary and updates the isbn to a cannonical ISBN 13 character format 4. Posts updated JSON dictionary back into GCIS-DEV using credentials from command line arguments. Other scripts are used to compare metadata. If the metadata from GCIS-DEV matches the metadata from other database, then the cleaned ISBN is considered valid. Each script is dedicated to a specfic database (World Cat, Google, Library of Congress, etc.). Each of the following scripts: 1. *Extracts all ISBN formats from GCIS-DEV 2. Converts ISBN to a validated ISBN-13 format 3. Writes metadata from GCIS-DEV and other Database onto text file [example: "{database}-DATA.txt"]. 4. Writes errors from GCIS-DEV and other Database onto text file [example: "{database}-ERROR.txt"]. Requirements ============ 1. Python: - Python 3.4 2. API access: (isbn-validator-post use only) Positional arg: Gcis.conf (YAML format) file containing: - url - userinfo - key Optional arg: (*use only if Gcis.conf file is not avaliable) -username and api key Installation ============ Clone git repo "gcis-isbn-validator". Usage ===== To execute script, open command line and change directory to location of git repo. Enter into command line: ~python [SCRIPT.py] *Some scripts may require extra arguments. To view them, insert a "--help" flag at the end of script ~python [SCRIPT.py] --help Notes/References ================ *Scripts that require command line arguments: - isbn-validator-post.py - isbndb_isbn_validator.py Incomplete Scripts: - amazon_isbn_validator.py Issue: Implementing Amazon Request into script and parsing the Amazon metadata - dbpedia_isbn_valdator.py Issue: No ISBN results when running ISBN SPARQL query