commit 2a66a1f0fac60b9a6d2097c4e7a37dc0d2c13d28 Author: yumoqing Date: Wed Jul 16 15:07:09 2025 +0800 first commit diff --git a/README.md b/README.md new file mode 100644 index 0000000..bd618c9 --- /dev/null +++ b/README.md @@ -0,0 +1,24 @@ +# file2text + +this module read file and convert it's content to text, this modulde suports a lot of file types, like docx, xlsx, pptx, pdf, epub, mobi, txt, csv. + +the chm and doc file not supported yet + +## Dependents +All dependented modules in requirements.txt + +## installation +Just run the following command + +``` +pip install git+https://git.kaiyuancloud.cn/yumoqing/file2text.git +``` + +## Usage +``` +from file2text.loader import fileloader + + +text = fileloader(filepath) +print(text) +``` diff --git a/filetxt/__init__.py b/filetxt/__init__.py new file mode 100644 index 0000000..1f56709 --- /dev/null +++ b/filetxt/__init__.py @@ -0,0 +1,2 @@ +from .version import __version__ + diff --git a/filetxt/loader.py b/filetxt/loader.py new file mode 100644 index 0000000..f87bb58 --- /dev/null +++ b/filetxt/loader.py @@ -0,0 +1,153 @@ +import os +import codecs +from datetime import datetime +from langchain_community.document_loaders.csv_loader import CSVLoader +from langchain_community.document_loaders.text import TextLoader +from docx import Document +from ebooklib import epub +from bs4 import BeautifulSoup +from pptx import Presentation +from openpyxl import load_workbook +import mobi +from pypdf import PdfReader +import html2text + +class BaseLoader: + def __init__(self, file_path): + self.filepath = file_path + + def load(self): + pts = [] + for i, t in self.load_pagetext(): + pts.append(' '.join(t.split('\t'))) + return '\n'.join(pts) + + def load_pagetext(self): + raise Exception('Not implement') + +class MyMobiLoader(BaseLoader): + def load_pagetext(self): + tempdir, filepath = mobi.extract(self.filepath) + with codecs.open(filepath, "r", "utf-8") as f: + content=f.read() + yield (0, html2text.html2text(content)) + +class MyPdfLoader(BaseLoader): + def load_pagetext(self): + """Reads the PDF file and returns all text as a single string.""" + reader = PdfReader(self.filepath) + pts = [] + for i,page in enumerate(reader.pages): + t = page.extract_text() or '' + yield (i, t) + +class MyDocxLoader(BaseLoader): + def load_pagetext(self): + """Reads the .docx file and returns the full text as a single string.""" + docx = Document(self.filepath) + for i, para in enumerate(docx.paragraphs): + yield (i,para.text) + +class MyPptLoader(BaseLoader): + def load_pagetext(self): + prs = Presentation(self.filepath) + for i, slide in enumerate(prs.slides): + txts = [] + for shape in slide.shapes: + if hasattr(shape, "text"): + txts.append(shape.text) + yield (i,'\n'.join(txts)) + +class MyCsvLoader(BaseLoader): + def load_pagetext(self): + loader = CSVLoader(self.filepath) + docs = loader.load() + for i, d in enumerate(docs): + dat = (i, d.page_content) + yield dat + +class MyExcelLoader(BaseLoader): + def load_pagetext(self): + """Reads all sheets in the Excel file and returns the content as a string.""" + self.workbook = load_workbook(filename=self.filepath, data_only=True) + content = [] + + for i, sheet in enumerate(self.workbook.worksheets): + txts = [] + for row in sheet.iter_rows(values_only=True): + row_text = '\t'.join(str(cell) if cell is not None else '' for cell in row) + txts.append(row_text) + yield(i, '\n'.join(txts)) + + return content + +class MyEpubLoader(BaseLoader): + def __init__(self, file_path): + self.filepath = file_path + self.book = None + + def load_pagetext(self): + """Reads the EPUB file and returns all text content as a string.""" + self.book = epub.read_epub(self.filepath) + for i, item in enumerate(self.book.get_items()): + if isinstance(item, epub.EpubHtml): + soup = BeautifulSoup(item.get_content(), 'html.parser') + text = soup.get_text() + yield(i, text.strip()) + + +class MyTextLoader(BaseLoader): + def load_pagetext(self): + loader = TextLoader(self.filepath) + docs = loader.load() + for i, d in enumerate(docs): + dat = (i, d.page_content) + yield dat + +class File2Text: + all_loaders = { + 'docx':MyDocxLoader, + 'pptx':MyPptLoader, + 'csv':MyCsvLoader, + 'xlsx':MyExcelLoader, + 'pdf':MyPdfLoader, + 'epub':MyEpubLoader, + 'mobi':MyMobiLoader, + 'txt':MyTextLoader + } + def __init__(self, filepath): + self.filepath = filepath + + def load_pagetext(self): + k = self.filepath.lower().split('.')[-1] + klass = self.all_loaders.get(k, MyTextLoader) + loader = klass(self.filepath) + for d in loader.load_pagetext(): + yield d + + def load(self): + k = self.filepath.lower().split('.')[-1] + klass = self.all_loaders.get(k, MyTextLoader) + loader = klass(self.filepath) + return loader.load() + +def fileloader(file_path): + loader = File2Text(file_path) + return loader.load() + +def filepageloader(file_path): + loader = File2Text(file_path) + for d in loader.load_pagetext(): + yield d + +if __name__ == '__main__': + import sys + if len(sys.argv) < 2: + print(f'{sys.argv[0]} file\nload a file and get its text') + sys.exit(1) + text = fileloader(sys.argv[1]) + print(f'{text=}') + """ + for i, txt in filepageloader(sys.argv[1]): + print(f'page:{i}\n{txt}\n=======\n') + """ diff --git a/filetxt/version.py b/filetxt/version.py new file mode 100644 index 0000000..446d9fd --- /dev/null +++ b/filetxt/version.py @@ -0,0 +1,2 @@ +__version__ = '0.0.1' + diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..a5b6629 --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,28 @@ +[project] +name="filetxt" +version = "0.0.1" +description = "load documents from file and get it's text" +authors = [{ name = "yu moqing", email = "yumoqing@gmail.com" }] +readme = "README.md" +requires-python = ">=3.8" +license = {text = "MIT"} +dependencies = [ + "langchain_community", + "pillow", + "mobi", + "html2text", + "python-docx", + "python-pptx", + "openpyxl", + "pypdf", + "ebooklib ", + "beautifulsoup4", +] + +[project.optional-dependencies] +dev = ["pytest", "black", "mypy"] + +[build-system] +requires = ["setuptools>=61", "wheel"] +build-backend = "setuptools.build_meta" + diff --git a/test/08-dns-setup-guide.txt b/test/08-dns-setup-guide.txt new file mode 100644 index 0000000..f962552 --- /dev/null +++ b/test/08-dns-setup-guide.txt @@ -0,0 +1,2 @@ +# Jinja2 template for 08-dns-setup-guide.txt +# Use '{{ variable }}' for parameter substitution diff --git a/test/2222.docx b/test/2222.docx new file mode 100644 index 0000000..fc75408 Binary files /dev/null and b/test/2222.docx differ diff --git a/test/ICP负责人授权书.doc b/test/ICP负责人授权书.doc new file mode 100644 index 0000000..2d522ad Binary files /dev/null and b/test/ICP负责人授权书.doc differ diff --git a/test/PowerCollections.chm b/test/PowerCollections.chm new file mode 100644 index 0000000..d9419f5 Binary files /dev/null and b/test/PowerCollections.chm differ diff --git a/test/lytton-harold-the-last-of-the-saxons.epub b/test/lytton-harold-the-last-of-the-saxons.epub new file mode 100644 index 0000000..c38cdc9 Binary files /dev/null and b/test/lytton-harold-the-last-of-the-saxons.epub differ diff --git a/test/lytton-harold-the-last-of-the-saxons.mobi b/test/lytton-harold-the-last-of-the-saxons.mobi new file mode 100644 index 0000000..b674610 Binary files /dev/null and b/test/lytton-harold-the-last-of-the-saxons.mobi differ diff --git a/test/the-house-of-cards-complete-trilogy-michael-dobbs.pdf b/test/the-house-of-cards-complete-trilogy-michael-dobbs.pdf new file mode 100644 index 0000000..07b2b57 Binary files /dev/null and b/test/the-house-of-cards-complete-trilogy-michael-dobbs.pdf differ diff --git a/test/upapp.xlsx b/test/upapp.xlsx new file mode 100644 index 0000000..27200da Binary files /dev/null and b/test/upapp.xlsx differ diff --git a/test/专属账户证明函.pdf b/test/专属账户证明函.pdf new file mode 100644 index 0000000..207bee1 Binary files /dev/null and b/test/专属账户证明函.pdf differ diff --git a/test/人工智能服务平台.pptx b/test/人工智能服务平台.pptx new file mode 100644 index 0000000..4fb7e5f Binary files /dev/null and b/test/人工智能服务平台.pptx differ diff --git a/test/开元云24年2月.csv b/test/开元云24年2月.csv new file mode 100644 index 0000000..a31f904 --- /dev/null +++ b/test/开元云24年2月.csv @@ -0,0 +1,45 @@ +Payer账号ID,Payer账号账户名,Payer账号客户名称,产品,账务账期,计费模式,使用时长,时长单位,账单类型,实例ID,实例名称,计费单元,计费方式,地域,可用区,影响因子,扩展字段,单价,单价单位,用量,用量单位,资源包抵扣量,原价,优惠金额,市场价,优惠类型,优惠内容,有效因子,折后价,代金券抵扣,应付金额,实付金额,欠费金额,项目,我方主体名称 +2100580925,KYY开元云,开元云(北京)科技有限公司,云服务器,2024-02,包年包月,1,月,消费-新购,i-ycy74t1rswcva4f3o2ve,ECS-eM2Y,ecs.r3i,包月,华北2(北京),可用区北京B,type-4xlarge,-,2675.692800,台,1,台,0,2675.690000,0.000000,-,-,-,1.000000,2675.690000,0.000000,2675.690000,0.000000,2675.690000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,云服务器,2024-02,包年包月,1,月,消费-续费,i-ycms9rqtnwebgz4xhup5,kbossprod,ecs.g3i,包月,华北2(北京),可用区北京B,type-xlarge,-,506.760000,台,1,台,0,506.760000,0.000000,-,-,-,1.000000,506.760000,506.760000,0.000000,0.000000,0.000000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,云服务器,2024-02,包年包月,1,月,消费-续费,i-ycms9rqtnxebgy5nbzmj,tts,ecs.g3i,包月,华北2(北京),可用区北京B,type-xlarge,-,506.760000,台,1,台,0,506.760000,0.000000,-,-,-,1.000000,506.760000,506.760000,0.000000,0.000000,0.000000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,云服务器,2024-02,包年包月,1,月,消费-续费,i-ycmsa3j1ozebgymp82tw,dbserver,ecs.g3i,包月,华北2(北京),可用区北京B,type-xlarge,-,506.760000,台,1,台,0,506.760000,0.000000,-,-,-,1.000000,506.760000,506.760000,0.000000,0.000000,0.000000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,云服务器,2024-02,包年包月,1,月,消费-续费,i-ycmsa3j1p0ebgzc0znp3,dbserver,ecs.g3i,包月,华北2(北京),可用区北京B,type-xlarge,-,506.760000,台,1,台,0,506.760000,0.000000,-,-,-,1.000000,506.760000,506.760000,0.000000,0.000000,0.000000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,云服务器,2024-02,包年包月,1,月,消费-续费,i-ycs9p5h8u85i3z3mfkrk,mailserver,ecs.g3i,包月,华北2(北京),可用区北京B,type-xlarge,-,506.760000,台,1,台,0,506.760000,0.000000,-,-,-,1.000000,506.760000,0.000000,506.760000,0.000000,506.760000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,云服务器,2024-02,包年包月,1,月,消费-续费,i-ycuv7zcqgwqc6il0nfb9,monitor,ecs.g3a,包月,华北2(北京),可用区北京B,type-xlarge,-,420.879400,台,1,台,0,420.880000,0.000000,-,-,-,1.000000,420.880000,420.880000,0.000000,0.000000,0.000000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,云服务器,2024-02,包年包月,6,月,消费-续费,i-ycwg4th4w0cva4fi5jju,jumper,ecs.g3i,包月,华北2(北京),可用区北京B,type-large,-,253.380000,台,1,台,0,1520.280000,0.000000,-,-,-,1.000000,1520.280000,0.000000,1520.280000,0.000000,1520.280000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,云服务器,2024-02,包年包月,1,月,消费-续费,i-ycwiv3tog0cva4fsew49,gpt,ecs.r3i,包月,华北2(北京),可用区北京B,type-2xlarge,-,1337.846400,台,1,台,0,1337.850000,0.000000,-,-,-,1.000000,1337.850000,0.000000,1337.850000,0.000000,1337.850000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,云服务器,2024-02,包年包月,1,月,消费-续费,i-ycy74t1rswcva4f3o2ve,ECS-eM2Y,ecs.r3i,包月,华北2(北京),可用区北京B,type-4xlarge,-,2675.692800,台,1,台,0,2675.690000,0.000000,-,-,-,1.000000,2675.690000,616.340000,2059.350000,0.000000,2059.350000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,公网IP,2024-02,包年包月,6,月,消费-续费,eip-mimr39u9xl345smt1az3fhl1,eip-mimr39u9xl345smt1az3fhl1,带宽费,包月,华北2(北京),-,线路类型-BGP,-,0.000000,Mbps,5,Mbps,0,726.000000,0.000000,-,-,-,1.000000,726.000000,0.000000,726.000000,0.000000,726.000000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,公网IP,2024-02,按量计费,2505600,秒,消费-使用,eip-13fprv0c77dvk3n6nu4gdyi10,eip-13fprv0c77dvk3n6nu4gdyi10,IP配置费,按配置小时结,华北2(北京),-,-,-,0.020000,个/时,1,个,0,13.920000,0.000000,-,-,-,1.000000,13.920000,7.700000,6.220000,0.000000,6.220000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,公网IP,2024-02,按量计费,0,-,消费-使用,eip-13fr218x26y9s3n6nu4s0sqrt,eip-13fr218x26y9s3n6nu4s0sqrt,流量费,按加和量小时结,华北2(北京),-,线路类型-BGP,-,0.800000,GB,1.145693136,GB,0,0.916549,0.000000,-,-,-,1.000000,0.390000,0.090000,0.300000,0.000000,0.300000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,公网IP,2024-02,按量计费,2505600,秒,消费-使用,eip-mj1izmwehslc5smt1ae93dru,eip-mj1izmwehslc5smt1ae93dru,IP配置费,按配置小时结,华北2(北京),-,-,-,0.020000,个/时,1,个,0,13.920000,0.000000,-,-,-,1.000000,13.920000,7.710000,6.210000,0.000000,6.210000,kboss,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,公网IP,2024-02,按量计费,2505600,秒,消费-使用,eip-mjeha7usbpc05smt1aml0r50,test,带宽费,按配置小时结,华北2(北京),-,线路类型-BGP,-,-,Mbps/时,30,Mbps,0,4569.240000,0.000000,-,-,-,1.000000,4566.800000,2528.200000,2038.600000,0.000000,2038.600000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,公网IP,2024-02,按量计费,0,-,消费-使用,eip-mjizrsay14w05smt1bsuiuam,www,流量费,按加和量小时结,华北2(北京),-,线路类型-BGP,-,0.800000,GB,14.202581344,GB,0,11.362070,0.000000,-,-,-,1.000000,10.340000,5.060000,5.280000,0.000000,5.280000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,公网IP,2024-02,按量计费,0,-,消费-使用,eip-rrwgt1dcp5vkv0x57qi1kxx,eip-rrwgt1dcp5vkv0x57qi1kxx,流量费,按加和量小时结,华北2(北京),-,线路类型-融合BGP,-,0.640000,GB,8.055268314,GB,0,5.155385,0.000000,-,-,-,1.000000,5.110000,0.840000,4.270000,0.000000,4.270000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,弹性块存储,2024-02,包年包月,1,月,消费-新购,vol-d5at1w1chpd5p0a8cxyt,vol-d5at1w1chpd5p0a8cxyt,EBS数据盘,包月,华北2(北京),可用区北京B,类型-ESSD_PL0,-,0.500000,GiB,800,GiB,0,400.000000,0.000000,-,-,-,1.000000,400.000000,0.000000,400.000000,0.000000,400.000000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,弹性块存储,2024-02,包年包月,1,月,消费-新购,vol-lqoaseorjhfxgv38wj3b,vol-lqoaseorjhfxgv38wj3b,EBS系统盘,包月,华北2(北京),可用区北京B,类型-ESSD_PL0,-,0.500000,GiB,40,GiB,0,20.000000,0.000000,-,-,-,1.000000,20.000000,0.000000,20.000000,0.000000,20.000000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,弹性块存储,2024-02,包年包月,1,月,消费-续费,vol-50mgc4tgockt8r3z1wbf,vol-50mgc4tgockt8r3z1wbf,EBS数据盘,包月,华北2(北京),可用区北京B,类型-ESSD_PL0,-,0.500000,GiB,200,GiB,0,100.000000,0.000000,-,-,-,1.000000,100.000000,100.000000,0.000000,0.000000,0.000000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,弹性块存储,2024-02,包年包月,1,月,消费-续费,vol-50mgksmx55l4xp1mzwct,vol-50mgksmx55l4xp1mzwct,EBS数据盘,包月,华北2(北京),可用区北京B,类型-ESSD_PL0,-,0.500000,GiB,500,GiB,0,250.000000,0.000000,-,-,-,1.000000,250.000000,0.000000,250.000000,0.000000,250.000000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,弹性块存储,2024-02,包年包月,1,月,消费-续费,vol-50mgksmx5ll4xos5mev5,vol-50mgksmx5ll4xos5mev5,EBS系统盘,包月,华北2(北京),可用区北京B,类型-ESSD_PL0,-,0.500000,GiB,40,GiB,0,20.000000,0.000000,-,-,-,1.000000,20.000000,0.000000,20.000000,0.000000,20.000000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,弹性块存储,2024-02,包年包月,1,月,消费-续费,vol-50mht4ith1kt8ra1pjn2,vol-50mhfnwr38kvky0b0950,EBS系统盘,包月,华北2(北京),可用区北京B,类型-ESSD_PL0,-,0.500000,GiB,40,GiB,0,20.000000,0.000000,-,-,-,1.000000,20.000000,20.000000,0.000000,0.000000,0.000000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,弹性块存储,2024-02,包年包月,6,月,消费-续费,vol-50mi32ke8ml4jmnfnexg,vol-50mi32ke8ml4jmnfnexg,EBS数据盘,包月,华北2(北京),可用区北京B,类型-ESSD_PL0,-,0.500000,GiB,200,GiB,0,600.000000,0.000000,-,-,-,1.000000,600.000000,0.000000,600.000000,0.000000,600.000000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,弹性块存储,2024-02,包年包月,6,月,消费-续费,vol-50mi32ke91l4jn4abgm5,vol-50mi32ke91l4jn4abgm5,EBS系统盘,包月,华北2(北京),可用区北京B,类型-ESSD_PL0,-,0.500000,GiB,40,GiB,0,120.000000,0.000000,-,-,-,1.000000,120.000000,0.000000,120.000000,0.000000,120.000000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,弹性块存储,2024-02,包年包月,1,月,消费-续费,vol-9ycksj2794kaxbgvvxfa,vol-9ycksj2794kaxbgvvxfa,EBS数据盘,包月,华北2(北京),可用区B,类型-ESSD_PL0,-,0.500000,GiB,500,GiB,0,250.000000,0.000000,-,-,-,1.000000,250.000000,0.000000,250.000000,0.000000,250.000000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,弹性块存储,2024-02,包年包月,1,月,消费-续费,vol-9ycksj2795kaxb1omm8b,vol-9ycksj2795kaxb1omm8b,EBS系统盘,包月,华北2(北京),可用区B,类型-ESSD_PL0,-,0.500000,GiB,40,GiB,0,20.000000,0.000000,-,-,-,1.000000,20.000000,0.000000,20.000000,0.000000,20.000000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,弹性块存储,2024-02,包年包月,1,月,消费-续费,vol-d5at1w1chpd5p0a8cxyt,vol-d5at1w1chpd5p0a8cxyt,EBS数据盘,包月,华北2(北京),可用区北京B,类型-ESSD_PL0,-,0.500000,GiB,800,GiB,0,400.000000,0.000000,-,-,-,1.000000,400.000000,92.140000,307.860000,0.000000,307.860000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,弹性块存储,2024-02,包年包月,1,月,消费-续费,vol-k10r7zjiumlzq2ry617d,vol-k10r7zjiumlzq2ry617d,EBS系统盘,包月,华北2(北京),可用区B,类型-ESSD_PL0,-,0.500000,GiB,100,GiB,0,50.000000,0.000000,-,-,-,1.000000,50.000000,50.000000,0.000000,0.000000,0.000000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,弹性块存储,2024-02,包年包月,1,月,消费-续费,vol-k10r7zjiunlzq2rov2n5,vol-k10r7zjiunlzq2rov2n5,EBS系统盘,包月,华北2(北京),可用区B,类型-ESSD_PL0,-,0.500000,GiB,100,GiB,0,50.000000,0.000000,-,-,-,1.000000,50.000000,50.000000,0.000000,0.000000,0.000000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,弹性块存储,2024-02,包年包月,1,月,消费-续费,vol-k10rkr3ce6lzq2d3bm1k,vol-k10rkr3ce6lzq2d3bm1k,EBS数据盘,包月,华北2(北京),可用区B,类型-ESSD_PL0,-,0.500000,GiB,500,GiB,0,250.000000,0.000000,-,-,-,1.000000,250.000000,250.000000,0.000000,0.000000,0.000000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,弹性块存储,2024-02,包年包月,1,月,消费-续费,vol-k10rkr3ce7lzq1e8nqe3,vol-k10rkr3ce7lzq1e8nqe3,EBS数据盘,包月,华北2(北京),可用区B,类型-ESSD_PL0,-,0.500000,GiB,500,GiB,0,250.000000,0.000000,-,-,-,1.000000,250.000000,250.000000,0.000000,0.000000,0.000000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,弹性块存储,2024-02,包年包月,1,月,消费-续费,vol-k10rkr3cejlzq1rrpurt,vol-k10rkr3cejlzq1rrpurt,EBS系统盘,包月,华北2(北京),可用区B,类型-ESSD_PL0,-,0.500000,GiB,100,GiB,0,50.000000,0.000000,-,-,-,1.000000,50.000000,50.000000,0.000000,0.000000,0.000000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,弹性块存储,2024-02,包年包月,1,月,消费-续费,vol-k10rkr3ceklzq2tl3gnk,vol-k10rkr3ceklzq2tl3gnk,EBS系统盘,包月,华北2(北京),可用区B,类型-ESSD_PL0,-,0.500000,GiB,100,GiB,0,50.000000,0.000000,-,-,-,1.000000,50.000000,50.000000,0.000000,0.000000,0.000000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,弹性块存储,2024-02,包年包月,1,月,消费-续费,vol-lqoaseorjhfxgv38wj3b,vol-lqoaseorjhfxgv38wj3b,EBS系统盘,包月,华北2(北京),可用区北京B,类型-ESSD_PL0,-,0.500000,GiB,40,GiB,0,20.000000,0.000000,-,-,-,1.000000,20.000000,4.600000,15.400000,0.000000,15.400000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,视频点播,2024-02,按量计费,0,-,消费-使用,Vod7327907507225137420,-,CDN带宽,按日峰值日结,国内通用,-,-,-,-,Mbps,0.37389946,Mbps,0,0.224341,0.000000,-,-,-,1.000000,0.220000,0.220000,0.000000,0.000000,0.000000,-,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,云服务器,2024-02,按量计费,397089,秒,消费-使用,i-ycxrjo854wqbxyrxyobg,ECS-IaGK,ecs.c3a,按配置小时结,华东2(上海),可用区A,type-xlarge,-,0.574944,台/时,1,台,0,63.417761,0.000000,-,单一折扣,10折,1.000000,62.870000,0.000000,62.870000,0.000000,62.870000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,云服务器,2024-02,按量计费,305196,秒,消费-使用,i-yczrwb5tkwk36d0zlob3,Baixiong,ecs.c3a,按配置小时结,华东2(上海),可用区A,type-xlarge,-,0.574944,台/时,1,台,0,48.741836,0.000000,-,单一折扣,10折,1.000000,48.320000,0.000000,48.320000,0.000000,48.320000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,公网IP,2024-02,按量计费,0,-,消费-使用,eip-3qdc3mabunytc7prml08eh060,eip-3qdc3mabunytc7prml08eh060,流量费,按加和量小时结,华东2(上海),-,线路类型-BGP,-,0.800000,GB,82.029840645,GB,0,65.623876,0.000000,-,-,-,1.000000,65.600000,0.000000,65.600000,0.000000,65.600000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,公网IP,2024-02,按量计费,0,-,消费-使用,eip-3qdqysagkc5c07prml0mgubhu,eip-3qdqysagkc5c07prml0mgubhu,流量费,按加和量小时结,华东2(上海),-,线路类型-BGP,-,0.800000,GB,4.483772863,GB,0,3.587019,0.000000,-,-,-,1.000000,3.460000,0.000000,3.460000,0.000000,3.460000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,弹性块存储,2024-02,按量计费,397089,秒,消费-使用,vol-3pbnodjt0yfuclwfshr1,vol-3pbnodjt0yfuclwfshr1,EBS系统盘,按配置小时结,华东2(上海),可用区A,类型-ESSD_PL0,-,0.001050,GiB/时,100,GiB,0,11.581762,0.000000,-,-,-,1.000000,11.030000,0.000000,11.030000,0.000000,11.030000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,弹性块存储,2024-02,按量计费,305196,秒,消费-使用,vol-3pbo89eyk4g8rqdxtb09,vol-3pbo89eyk4g8rqdxtb09,EBS数据盘,按配置小时结,华东2(上海),可用区A,类型-ESSD_PL0,-,0.001050,GiB/时,1000,GiB,0,89.015500,0.000000,-,-,-,1.000000,89.010000,0.000000,89.010000,0.000000,89.010000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,弹性块存储,2024-02,按量计费,397089,秒,消费-使用,vol-fcyrpe2yl7aastydl303,vol-fcyrpe2yl7aastydl303,EBS数据盘,按配置小时结,华东2(上海),可用区A,类型-ESSD_PL0,-,0.001050,GiB/时,1024,GiB,0,118.597248,0.000000,-,-,-,1.000000,119.120000,0.000000,119.120000,0.000000,119.120000,default,北京火山引擎科技有限公司 +2100580925,KYY开元云,开元云(北京)科技有限公司,弹性块存储,2024-02,按量计费,305196,秒,消费-使用,vol-h85k98suhp7xg2vx786b,vol-h85k98suhp7xg2vx786b,EBS系统盘,按配置小时结,华东2(上海),可用区A,类型-ESSD_PL0,-,0.001050,GiB/时,100,GiB,0,8.901550,0.000000,-,-,-,1.000000,8.480000,0.000000,8.480000,0.000000,8.480000,default,北京火山引擎科技有限公司