Максим Стихарев,
то, что написано у вас, должно выглядеть
примерно вот так (если я правильно понял):
for post in media:
id = post['node']['id']
if cursor.execute("SELECT count(id) FROM blog_instagram WHERE id = ?", id):
continue
cursor.execute("INSERT INTO blog_instagram(id, like, comment, photo) VALUES(?, ?, ?, ?)",
[id,
post['node']['edge_media_to_comment']['count'],
post['node']['edge_liked_by']['count'],
post['node']['display_url']]
)
но тут сразу возникает много вопросов )
1) правильно ли вы понимаете смысл поля id в реляционной базе данных (я спрашиваю потому что обычно его не вставляют)
если имеется в виду post_id или что-то типа того то тогда у вас там бардак в названиях который смущает все сообщество.
2) какова структура таблицы
3) чего именно вы добиться хотите
4) обычно уникальность поля гарантирует не девелопер своими кривыми дополнительными запросами, а база данных. почитайте про UNIQUE Constraint