Skip to content

Commit

Permalink
Encode the csv import as utf8
Browse files Browse the repository at this point in the history
  • Loading branch information
VirginiaDooley committed Nov 30, 2023
1 parent 2b08d55 commit b53fe17
Showing 1 changed file with 4 additions and 7 deletions.
11 changes: 4 additions & 7 deletions wcivf/apps/ppc_2024/management/commands/import_2024_ppcs.py
Original file line number Diff line number Diff line change
Expand Up @@ -54,8 +54,6 @@ def from_csv_row(cls, row: dict):
person_name = row.pop("Candidate Name")
person_id = row.pop("DC Candidate ID")
constituency_name = row.pop("Constituency")
region_name = row.pop("Nation / Region")

region_name = row.pop("Nation / Region")
sheet_row = row
return cls(
Expand Down Expand Up @@ -105,10 +103,10 @@ def get_person(self, person_id):
def create_ppc(self, data: CSVRow):
print(data.party_id)
party: Party = Party.objects.get(ec_id=data.party_id)

person: Optional[Person] = None
with contextlib.suppress(Person.DoesNotExist):
person = self.get_person(data.person_id)

return PPCPerson.objects.create(
person_name=data.person_name,
party=party,
Expand All @@ -117,16 +115,15 @@ def create_ppc(self, data: CSVRow):
region_name=data.region_name,
sheet_row=data.sheet_row,
)
party.party_name = data.party_name
party.save()
return ppc

@transaction.atomic
def handle(self, **options):
self.delete_all_ppcs()
counter = 0
req = requests.get(PPCPerson.CSV_URL)
reader: List[Dict] = csv.DictReader(req.text.splitlines())
reader: List[Dict] = csv.DictReader(
req.content.decode("utf8").splitlines()
)
for row in reader:
try:
data = CSVRow.from_csv_row(row)
Expand Down

0 comments on commit b53fe17

Please sign in to comment.