=====postgres peewee===== import csv #ORM для бд from peewee import * #Установка соединения db = PostgresqlDatabase(database='test', user='postgres', password='2619192', host='db') # Описание таблички coin class Coin(Model): # Поля таблицы name = CharField() url = TextField() price = CharField() def main(): # соединение с бд db.connect() # Создаем табличку, внутрь передается список таблиц которые надо создать db.create_tables([Coin]) # Открываем csv файл на чтение with open('cmc.csv') as f: order = ['name', 'url', 'price'] reader = csv.DictReader(f, fieldnames=order)#Приводим данные к словарю coins = list(reader) # альтернативный способ записи # for row in coins: # coin = Coin(name=row['name'], url=row['url'], price=row['price']) # coin.save() # Использовать транзакцию atomic with db.atomic(): # for row in coins: # Coin.create(**row) #именованные аргументы передаются в виде словаря # обходим словарики с шагом 100 for index in range(0, len(coins), 100): # На первой итерации берем от 0 до 100 Coin.insert_many(coins[index:index+100]).execute() if __name__ == '__main__': main()