将 QVD 文件导入 Jupyter notebook - python2
Import QVD file into Jupyter notebook - python2
我需要使用 pandas 导入一些 QVD 文件以便在 python 中使用它们。有谁知道是否可以将 qvd 文件作为数据框导入到 python2 的 jupyter 笔记本中?
A QVD (QlikView Data) file is a file containing a table of data exported from Qlik Sense. QVD is a native Qlik format and can only be written to and read by Qlik Sense or QlikView.
这可能有帮助:
def qvd_to_pandas(src_qvd):
from tempfile import TemporaryDirectory
from pathlib import Path
from win32com.client import Dispatch
import pandas as pd
with TemporaryDirectory(dir='.') as tmp_dir:
tmp_csv = Path(tmp_dir).absolute() / 'tmp.csv'
tmp_qvw = Path(tmp_dir).absolute() / 'tmp.qvw'
script = f'''
ExportTable: REPLACE LOAD * FROM {Path(src_qvd).absolute()} (qvd);
STORE ExportTable INTO {tmp_csv} (txt);
DROP TABLE ExportTable;
'''
qv = Dispatch('QlikTech.QlikView')
active_doc = qv.CreateDoc()
doc_properties = active_doc.GetProperties()
doc_properties.script = doc_properties.script + script
active_doc.SetProperties(doc_properties)
active_doc.SaveAs(tmp_qvw)
active_doc.ReloadEx(0, 1)
active_doc.CloseDoc()
qv.Quit()
df = pd.read_csv(open(tmp_csv, encoding='utf8'), dtype=str)
return df
df = qvd_to_pandas('my_qvd_file.qvd')
复制自:https://community.qlik.com/t5/New-to-QlikView/How-to-extract-QVD-data-using-python/td-p/1398020
今年(2021 年)似乎开发了一个 python 软件包 https://pypi.org/project/qvd/ 也许可以提供帮助。我会在身边测试。
我需要使用 pandas 导入一些 QVD 文件以便在 python 中使用它们。有谁知道是否可以将 qvd 文件作为数据框导入到 python2 的 jupyter 笔记本中?
A QVD (QlikView Data) file is a file containing a table of data exported from Qlik Sense. QVD is a native Qlik format and can only be written to and read by Qlik Sense or QlikView.
这可能有帮助:
def qvd_to_pandas(src_qvd):
from tempfile import TemporaryDirectory
from pathlib import Path
from win32com.client import Dispatch
import pandas as pd
with TemporaryDirectory(dir='.') as tmp_dir:
tmp_csv = Path(tmp_dir).absolute() / 'tmp.csv'
tmp_qvw = Path(tmp_dir).absolute() / 'tmp.qvw'
script = f'''
ExportTable: REPLACE LOAD * FROM {Path(src_qvd).absolute()} (qvd);
STORE ExportTable INTO {tmp_csv} (txt);
DROP TABLE ExportTable;
'''
qv = Dispatch('QlikTech.QlikView')
active_doc = qv.CreateDoc()
doc_properties = active_doc.GetProperties()
doc_properties.script = doc_properties.script + script
active_doc.SetProperties(doc_properties)
active_doc.SaveAs(tmp_qvw)
active_doc.ReloadEx(0, 1)
active_doc.CloseDoc()
qv.Quit()
df = pd.read_csv(open(tmp_csv, encoding='utf8'), dtype=str)
return df
df = qvd_to_pandas('my_qvd_file.qvd')
复制自:https://community.qlik.com/t5/New-to-QlikView/How-to-extract-QVD-data-using-python/td-p/1398020
今年(2021 年)似乎开发了一个 python 软件包 https://pypi.org/project/qvd/ 也许可以提供帮助。我会在身边测试。