diff --git a/analysis/votes_export.py b/analysis/votes_export.py index 558c5691..b7b1f88d 100755 --- a/analysis/votes_export.py +++ b/analysis/votes_export.py @@ -5,23 +5,39 @@ from vote.models import * +with_voters = False + w = csv.writer(sys.stdout) -w.writerow([ - "congress", "session", "number", "date", "question", "link", "person", "vote" -]) -for vote in Vote.objects.filter(congress=113, chamber=CongressChamber.house).order_by('created'): - voters = list(vote.voters.all().select_related('person', 'option')) - voters = sorted(voters, key = lambda v : v.person.sortname) +w.writerow( + ["congress", "session", "chamber", "number", "date", "category", "question", "link"] + + (["person", "vote"] if with_voters else []) +) + +votes = Vote.objects.filter( + #congress=113, + session__in=(2015, 2017), + chamber=CongressChamber.senate + ).order_by('created') + +for vote in votes: + if with_voters: + voters = list(vote.voters.all().select_related('person', 'option')) + voters = sorted(voters, key = lambda v : v.person.sortname) + else: + voters = [None] + for voter in voters: - if voter.person_role.state != "AZ": continue row = [ vote.congress, vote.session, + vote.get_chamber_display(), vote.number, vote.created.strftime("%x %X"), + vote.get_category_display(), vote.question, settings.SITE_ROOT_URL + vote.get_absolute_url(), + ] + ([ voter.person.sortname, voter.option.value, - ] + ] if with_voters else []) w.writerow([unicode(v).encode("utf8") for v in row])