Insert Array of JSON-s into Postgres table
there are many json functions built into postgresql

the function you are looking for json_to_recordset()  the command will look something like this

insert into table_name (country, category) 
   select * from json_to_recordset( '[
  {
     "country": "ANY",
     "category": "poetry"
   },
   {
      "country": "ES",
      "category": "science"
    }
   ]') as x(country text, category text);


On how elegant this is does not matter,  something has to parse the json text and turn it into a record,  postgresql may be able to do it faster than python.
Neither side looks pretty and neither side is fast because of the casting and text parsing that is going on