如何将字节数组(blob)转换回原始文件?

时间:2019-03-29 09:43:18

标签: python file binary zip lda

我目前正在使用Python中的LDAmodel进行主题建模分析。最终显示了一个网站,客户可以在其中选择开始和结束日期,并查看有关第四次工业革命的主题。 为了加快网站速度,我每天,每周,每月和每年对ldamodel进行分析,这些分析保存在zip文件中并转换为字节数组,并作为blob存储在sql服务器中(由产品所有者强制执行)。

我成功获取了与客户端输入相对应的文件,但我似乎无法将字节数组转换回其原始zip文件。

我发现了许多其他编程语言的方法,但不幸的是,我似乎找不到在Python中使用的体面方法。 下面的代码片段是我打算如何将负载模型用于ldamodel。目前,name变量是静态的,因为我只获取一个相同的文件进行测试。

def load_model():
connection = pymysql.connect(host='localhost', user='root', password='Flieren#3', db='analysis_results')
cursor = connection.cursor()
cursor.execute("SELECT `LDAmodel` FROM `results`")
file = cursor.fetchone()

# Here the file should be converted back to zip. 

temp = tempfile.mkdtemp()
os.mkdir(temp + os.sep + 'loadedfiles')
shutil.unpack_archive(file, extract_dir=temp + os.sep + 'loadedfiles' + '2019-03-01_2019-03-01_topic_model.zip')
models.LdaModel.load(temp + os.sep + 'loadedfiles' + '2019-03-01_2019-03-01_topic_model.zip')

0 个答案:

没有答案