আমি কি। CSV ফাইল থেকে আনকি ডেক তৈরি করতে পারি?


31

আমি কি আমার সিএসভি ফাইলটিকে আনকি ডেকে রূপান্তর করতে পারি? আমি প্রোগ্রামটিতে কোনও বিকল্প খুঁজে পাচ্ছি না।

উত্তর:


26

ডেস্কটপ আনকি সংস্করণ আপনাকে " ট্যাব বা সেমিকোলন দ্বারা বিচ্ছিন্ন পাঠ্য " আমদানির অনুমতি দেবে । আপনার সিএসভি ফাইল চয়ন করতে এই বিকল্পটি ব্যবহার করুন। ফাইলটি খোলার পরে, আপনাকে একটি কথোপকথন উপস্থাপন করা হবে যা আপনাকে কীভাবে আপনার ডেটা আমদানি করা যায় তা কাস্টমাইজ করার অনুমতি দেয়। সেটিংসগুলির মধ্যে একটি হ'ল একটি বিকল্প যা আপনাকে ডিলিমিটারটি চয়ন করতে দেয়। এটিকে কমাতে পরিবর্তন করুন এবং এটি আপনার পক্ষে কাজ করা উচিত।

স্ক্রিনশট: আন্কিতে একটি সিএসভি ফাইল আমদানি করা হচ্ছে


3
এছাড়াও আপনাকে ইউটিএফ -8

1
এটি বিদ্যমান ডেকে নতুন কার্ড toোকানোর জন্য ব্যবহার করা যেতে পারে?
29

তুমি এটা কিভাবে করেছিলে? "নোট আইডি" দিয়ে আমার একটি ডেক রয়েছে। তবুও, ম্যাপিংয়ের পছন্দগুলিতে এটি উপস্থিত হয় না: কেবল সম্মুখ, পিছনে বা উপেক্ষা করুন।
কাজ

8

.apkgপাইথনের সাহায্যে ডেস্কটপ সংস্করণ পুনরায় ব্যবহার করে প্রোগ্রামক্রমে ফাইল ফাইল উত্পন্ন করার আরেকটি উপায় । প্রসারিত করা:

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

এবং স্ক্রিপ্ট চালান (অবশ্যই আপনার এটি আপনার প্রয়োজনের সাথে খাপ খাইয়ে নেওয়া উচিত):

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">{{en}}</div>'
tmpl['afmt'] = '{{FrontSide}}\n\n<hr id=answer>\n\n{{ru}}'
collection.models.addTemplate(model, tmpl)
tmpl = collection.models.newTemplate('ru -> en')
tmpl['qfmt'] = '{{ru}}'
tmpl['afmt'] = '{{FrontSide}}\n\n<hr id=answer>\n\n<div class="from">{{en}}</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)

যতক্ষণ আপনি রাখেন note.guidএবং model['id']একই রাখেন আপনি অগ্রগতি হারানো ছাড়া কার্ড আপডেট করার সাথে আমদানি করতে পারবেন !

আমার উত্পাদন কোড উদাহরণ:

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.