首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Python:来自genanki的新制作的anki甲板笔记是不可见的

Python:来自genanki的新制作的anki甲板笔记是不可见的
EN

Stack Overflow用户
提问于 2019-09-03 22:55:07
回答 1查看 526关注 0票数 1

在创建甲板时,在导入到Anki时,Anki说注释已经添加,但我在Anki的浏览器中找不到它们。代码如下:

代码语言:javascript
运行
复制
from openpyxl import load_workbook
import genanki
import random

beg = 1000000000
end = 9999999999
id_list = []
for i in range(0, 5000):
    randomNum = random.randint(beg,end)
    while randomNum in id_list:
        randomNum = random.randint(beg, end)
    id_list.append(randomNum)


model = genanki.Model(
  id_list[-1],
  'Simple Model',
  fields=[
    {'name': 'Meaning'},
    {'name': 'Arabic Spelling'},
    {'name': 'Phonetic Spelling'},
    {'name': 'Audio'},
  ],
  templates=[
      {
        'name': 'Only Card',
          'qfmt': 'How do you say:<div style="font-family: Arial; font-size:             
                  40px; padding: 20px;">{{Arabic Spelling}}</div>',
          'afmt': '{{FrontSide}}<hr id=answer><div style="font-family: Arial;     
                  font-size: 20px; padding: 20px;">{{Meaning}}</div><div 
                  style="font-family: Arial; font-size: 20px; padding: 20px;"> 
                  <em>{{Phonetic Spelling}}</em></div><div style="font-family:         
                  Arial; font-size: 20px; padding: 20px;">{{Audio}}</div>',
      },
  ])
del id_list[-1]



my_deck = genanki.Deck(
  id_list[-1],
  'test')
del id_list[-1]

wb = load_workbook("all_words.xlsx")
sheet = wb.get_sheet_by_name('ALL WORDS')
englishWordList = []

for col_cells in sheet.iter_cols(min_row=2, min_col=1, max_col=1):
    for cell in col_cells:
        englishWordList.append(cell.value)

i = 0
for word in englishWordList:
    note = genanki.Note(
        sort_field=id_list[i],
        model=model,
        fields=[word, "", "", ""]
    )
    my_deck.add_note(note)
    i = i + 1
i = 0
genanki.Package(my_deck).write_to_file("testOutput.apkg")

输出是一个Anki平台,其中包含所有创建的笔记,但我在anki的浏览器中找不到它们。Anki告诉我“清理数据库”,因为数据库处于“不一致的状态”。下面是两张图片:添加注释的证明和错误描述:

此外,我已经尝试禁用所有可能会干扰的附加组件。它没有起作用,也没有改变结果。有人能帮上忙吗?我想也许Anki需要创建一张卡片,以便在Anki浏览器中显示笔记,但genanki没有关于如何创建卡片的说明。Genanki文档:genanki readme

EN

Stack Overflow用户

发布于 2019-09-04 20:31:05

答:生成笔记时,请确保{{FrontSide}}中有数据--我上面的脚本在前面的“阿拉伯语拼写”字段中没有数据。如果卡片正面没有任何内容,则不会生成任何卡片。将生成备注,但无法访问它们。

我还被告知,从我的数组id_list中分配sort_field可能会出现问题。有关更多解释,请参阅此reddit帖子:my reddit post.

票数 1
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57774213

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档