Kann ich ein Anki-Deck aus einer .CSV-Datei erstellen?

29567
Thalecress

Kann ich meine CSV-Datei in ein Anki-Deck konvertieren? Ich kann keine Optionen im Programm finden.

25

2 Antworten auf die Frage

23
nispio

Mit der Desktop- Version von Anki können Sie " Text durch Tabulatoren oder Semikolons getrennt " importieren . Verwenden Sie diese Option, um Ihre CSV-Datei auszuwählen. Nach dem Öffnen der Datei wird ein Dialogfeld angezeigt, in dem Sie den Import Ihrer Daten anpassen können. Eine der Einstellungen ist eine Option, mit der Sie das Trennzeichen auswählen können. Ändern Sie dies in ein Komma, und es sollte für Sie funktionieren.

Screenshot: Import einer CSV-Datei in Anki

Außerdem müssen Sie eine Kodierung für UTF-8 einrichten vor 9 Jahren 3
Kann es verwendet werden, um neue Karten in ein vorhandenes Deck einzufügen? Septagram vor 8 Jahren 1
Wie hast du das gemacht? Ich habe ein Deck mit "Note ID". Es wird jedoch nicht in den Zuordnungsoptionen angezeigt: Nur Vorne, Hinten oder Ignorieren. Kaz vor 6 Jahren 0
6
gavenkoa

Eine weitere Möglichkeit, .apkgDateien programmgesteuert zu generieren, indem die Desktopversion mit Python wiederverwendet wird. Erweitern:

PYTHONPATH=/usr/share/anki: python ... 

und Skript ausführen (natürlich sollten Sie es an Ihre Bedürfnisse anpassen):

import anki from anki.exporting import AnkiPackageExporter  collection = anki.Collection(os.path.join(TMPDIR, 'collection.anki2'))  deck_id = collection.decks.id(FBASENAME + "_deck") deck = collection.decks.get(deck_id)  model = collection.models.new(FBASENAME + "_model") model['tags'].append(FBASENAME + "_tag") model['did'] = deck_id model['css'] = """ .card { font-family: arial; font-size: 20px; text-align: center; color: black; background-color: white; } .from { font-style: italic; } """  collection.models.addField(model, collection.models.newField('en')) collection.models.addField(model, collection.models.newField('ru'))  tmpl = collection.models.newTemplate('en -> ru') tmpl['qfmt'] = '<div class="from">{}</div>' tmpl['afmt'] = '{}\n\n<hr id=answer>\n\n{}' collection.models.addTemplate(model, tmpl) tmpl = collection.models.newTemplate('ru -> en') tmpl['qfmt'] = '{}' tmpl['afmt'] = '{}\n\n<hr id=answer>\n\n<div class="from">{}</div>' collection.models.addTemplate(model, tmpl)  model['id'] = 12345678 # essential for upgrade detection collection.models.update(model) collection.models.setCurrent(model) collection.models.save(model)  note = anki.notes.Note(collection, model) note['en'] = "hello" note['ru'] = u"[heləʊ]\nint. привет" note.guid = "xxx1" collection.addNote(note)  note = collection.newNote() note['en'] = "bye" note['ru'] = u"[baɪ]\nint. пока" note.guid = "xxx2" collection.addNote(note)  export = AnkiPackageExporter(collection) export.exportInto(FONAME) 

Wie lange halten Sie note.guidund model['id']gleichen Sie können DB importieren mit der Aktualisierung Karten ohne Fortschritte zu verlieren !

Meine Produktionscode-Beispiele: