1 回答
TA贡献1818条经验 获得超3个赞
根据文档(https://docs.pybtex.org/api/parsing.html)有方法
parse_stringparse_bytes哪个可以工作。
像这样
我有一个从前端获得的 bibtex 文件,我正在尝试用 biblib (一个解析 bibtex 文件的 python 库)解析这个文件。因为我从前端获取文件,所以它没有存储在我电脑上的文件中。该文件通过一个变量从前端传递到 python,然后存储在 python 变量 fileFromFrontend 中。所以我可以使用例如:
bibtexFile = fileFromFrontend.read() 读取文件。
现在我正在尝试执行以下操作以在 python 终端中打印解析的文件:
from pybtex.database.input import bibtex
parser = bibtex.Parser()
bibtexFile= parser.parse_file(fileFromFrontend)
print (bibtexFile.entries)
但后来我得到这个错误:
-->bibtexFile = parser.parse_file(filesFromFrontend)
-->with open_file(filename, encoding=self.encoding) as f:
-->AttributeError: __enter__
这可能是因为解析器试图打开文件但他不必打开这个文件,他只需要读取这个文件。我不知道使用 biblib 库的什么函数来解析来自变量的文件,并且到目前为止还没有找到任何东西来解决我的问题。
希望有人可以提供帮助
添加回答
举报
