def test_dicts2csv(): result = [{'action_date': '09/09/2011', 'defendant_name': 'Samuel Mccray', 'grade': 'F1', 'max_time': '15 years', 'birth_date': '07/24/1964', 'judge_name': 'Hill, Glynnis', 'program': 'Confinement', 'min_time': '7 1/2 years', 'charge_section': '18 § 3121 §§ A1', 'date_initiated': '01/03/2011', 'charge_desc': 'Rape Forcible Compulsion', 'date_filed': '01/03/2011', 'docket_number': 'CP-51-CR-0000001-2011'}, {'action_date': '05/17/2011', 'defendant_name': 'Samuel Mccray', 'grade': 'M1', 'max_time': '5 years', 'birth_date': '07/24/1964', 'judge_name': 'Hill, Glynnis', 'program': 'Probation', 'min_time': '5 years', 'charge_section': '18 § 907 §§ A', 'date_initiated': '01/03/2011', 'charge_desc': 'Poss Instrument Of Crime W/Int', 'date_filed': '01/03/2011', 'docket_number': 'CP-51-CR-0000001-2011'}, {'action_date': '09/09/2011', 'defendant_name': 'Samuel Mccray', 'grade': 'M1', 'max_time': '5 years', 'birth_date': '07/24/1964', 'judge_name': 'Hill, Glynnis', 'program': 'Probation', 'min_time': '5 years', 'charge_section': '18 § 907 §§ A', 'date_initiated': '01/03/2011', 'charge_desc': 'Poss Instrument Of Crime W/Int', 'date_filed': '01/03/2011', 'docket_number': 'CP-51-CR-0000001-2011'}] errors = [{"error_file": "test.test","error_field":"test_field"}, {"error_file": "file2.test","error_field":"test_other"}] counts = {"successes": 10, "total":10} errors_file, results_file, counts_file = dicts2csv(errors, result, open('tests/output/errors.csv','w'), open('tests/output/results.csv','w'), counts = counts, counts_file = open('tests/output/counts.csv','w')) errors_file.close() results_file.close() counts_file.close() with open('tests/output/results.csv') as f: reader = csv.DictReader(f) assert "charge_section" in reader.fieldnames f.close()
from DocketQuery import docket_query from DocketQuery.saved_functions import docket_num_name_age import os src = "/Volumes/DOCKETS/CP_51_CR_all_2011_parsed/complete/" dest = "/Users/nathanvogel/Documents/Python/YSRP/statistics/num_name_age_query/" scraper = docket_query.AskADocket(docket_num_name_age) errors, results, counts = scraper.scrape_directory(src) if not os.path.exists(dest): os.mkdir(dest) docket_query.dicts2csv(errors, results, open(dest + "errors.csv", 'w'), open(dest + "results.csv", 'w'), counts = counts, counts_file = open(dest + "counts.csv", 'w')) with open(dest + "readme.md", "w") as f: f.write(""" This script applies the docket_num_name_age function to all the parsed dockets to recover only each docket's number, name, birth date, and initiated date. """) f.close()