示例#1
0
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()