Files
2025-07-04 19:26:39 +02:00

327 lines
14 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1" />
<meta name="generator" content="pdoc 0.9.2" />
<title>data-conversion.loaders.csvmanager API documentation</title>
<meta name="description" content="" />
<link rel="preload stylesheet" as="style" href="https://cdnjs.cloudflare.com/ajax/libs/10up-sanitize.css/11.0.1/sanitize.min.css" integrity="sha256-PK9q560IAAa6WVRRh76LtCaI8pjTJ2z11v0miyNNjrs=" crossorigin>
<link rel="preload stylesheet" as="style" href="https://cdnjs.cloudflare.com/ajax/libs/10up-sanitize.css/11.0.1/typography.min.css" integrity="sha256-7l/o7C8jubJiy74VsKTidCy1yBkRtiUGbVkYBylBqUg=" crossorigin>
<link rel="stylesheet preload" as="style" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.1.1/styles/github.min.css" crossorigin>
<style>:root{--highlight-color:#fe9}.flex{display:flex !important}body{line-height:1.5em}#content{padding:20px}#sidebar{padding:30px;overflow:hidden}#sidebar > *:last-child{margin-bottom:2cm}.http-server-breadcrumbs{font-size:130%;margin:0 0 15px 0}#footer{font-size:.75em;padding:5px 30px;border-top:1px solid #ddd;text-align:right}#footer p{margin:0 0 0 1em;display:inline-block}#footer p:last-child{margin-right:30px}h1,h2,h3,h4,h5{font-weight:300}h1{font-size:2.5em;line-height:1.1em}h2{font-size:1.75em;margin:1em 0 .50em 0}h3{font-size:1.4em;margin:25px 0 10px 0}h4{margin:0;font-size:105%}h1:target,h2:target,h3:target,h4:target,h5:target,h6:target{background:var(--highlight-color);padding:.2em 0}a{color:#058;text-decoration:none;transition:color .3s ease-in-out}a:hover{color:#e82}.title code{font-weight:bold}h2[id^="header-"]{margin-top:2em}.ident{color:#900}pre code{background:#f8f8f8;font-size:.8em;line-height:1.4em}code{background:#f2f2f1;padding:1px 4px;overflow-wrap:break-word}h1 code{background:transparent}pre{background:#f8f8f8;border:0;border-top:1px solid #ccc;border-bottom:1px solid #ccc;margin:1em 0;padding:1ex}#http-server-module-list{display:flex;flex-flow:column}#http-server-module-list div{display:flex}#http-server-module-list dt{min-width:10%}#http-server-module-list p{margin-top:0}.toc ul,#index{list-style-type:none;margin:0;padding:0}#index code{background:transparent}#index h3{border-bottom:1px solid #ddd}#index ul{padding:0}#index h4{margin-top:.6em;font-weight:bold}@media (min-width:200ex){#index .two-column{column-count:2}}@media (min-width:300ex){#index .two-column{column-count:3}}dl{margin-bottom:2em}dl dl:last-child{margin-bottom:4em}dd{margin:0 0 1em 3em}#header-classes + dl > dd{margin-bottom:3em}dd dd{margin-left:2em}dd p{margin:10px 0}.name{background:#eee;font-weight:bold;font-size:.85em;padding:5px 10px;display:inline-block;min-width:40%}.name:hover{background:#e0e0e0}dt:target .name{background:var(--highlight-color)}.name > span:first-child{white-space:nowrap}.name.class > span:nth-child(2){margin-left:.4em}.inherited{color:#999;border-left:5px solid #eee;padding-left:1em}.inheritance em{font-style:normal;font-weight:bold}.desc h2{font-weight:400;font-size:1.25em}.desc h3{font-size:1em}.desc dt code{background:inherit}.source summary,.git-link-div{color:#666;text-align:right;font-weight:400;font-size:.8em;text-transform:uppercase}.source summary > *{white-space:nowrap;cursor:pointer}.git-link{color:inherit;margin-left:1em}.source pre{max-height:500px;overflow:auto;margin:0}.source pre code{font-size:12px;overflow:visible}.hlist{list-style:none}.hlist li{display:inline}.hlist li:after{content:',\2002'}.hlist li:last-child:after{content:none}.hlist .hlist{display:inline;padding-left:1em}img{max-width:100%}td{padding:0 .5em}.admonition{padding:.1em .5em;margin-bottom:1em}.admonition-title{font-weight:bold}.admonition.note,.admonition.info,.admonition.important{background:#aef}.admonition.todo,.admonition.versionadded,.admonition.tip,.admonition.hint{background:#dfd}.admonition.warning,.admonition.versionchanged,.admonition.deprecated{background:#fd4}.admonition.error,.admonition.danger,.admonition.caution{background:lightpink}</style>
<style media="screen and (min-width: 700px)">@media screen and (min-width:700px){#sidebar{width:30%;height:100vh;overflow:auto;position:sticky;top:0}#content{width:70%;max-width:100ch;padding:3em 4em;border-left:1px solid #ddd}pre code{font-size:1em}.item .name{font-size:1em}main{display:flex;flex-direction:row-reverse;justify-content:flex-end}.toc ul ul,#index ul{padding-left:1.5em}.toc > ul > li{margin-top:.5em}}</style>
<style media="print">@media print{#sidebar h1{page-break-before:always}.source{display:none}}@media print{*{background:transparent !important;color:#000 !important;box-shadow:none !important;text-shadow:none !important}a[href]:after{content:" (" attr(href) ")";font-size:90%}a[href][title]:after{content:none}abbr[title]:after{content:" (" attr(title) ")"}.ir a:after,a[href^="javascript:"]:after,a[href^="#"]:after{content:""}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100% !important}@page{margin:0.5cm}p,h2,h3{orphans:3;widows:3}h1,h2,h3,h4,h5,h6{page-break-after:avoid}}</style>
<script defer src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/10.1.1/highlight.min.js" integrity="sha256-Uv3H6lx7dJmRfRvH8TH6kJD1TSK1aFcwgx+mdg3epi8=" crossorigin></script>
<script>window.addEventListener('DOMContentLoaded', () => hljs.initHighlighting())</script>
</head>
<body>
<main>
<article id="content">
<header>
<h1 class="title">Module <code>data-conversion.loaders.csvmanager</code></h1>
</header>
<section id="section-intro">
<details class="source">
<summary>
<span>Expand source code</span>
</summary>
<pre><code class="python">import csv
class CSVManager:
&#34;&#34;&#34;
Utility class to keep CSV data for export in other formats.
Attributes:
data: Contains loaded file data as a list of lists.
&#34;&#34;&#34;
data: list = None
def __init__(self, url: str):
&#34;&#34;&#34;
Initialize the object with a URL.
Args:
url: CSV URL to load from.
&#34;&#34;&#34;
self.load(url)
def load(self, url: str, encoding: str = &#34;iso8859-1&#34;):
&#34;&#34;&#34;
Load a CSV given its file path.
Args:
url: Path of the CSV file.
encoding: Codepage name of the text file.
&#34;&#34;&#34;
with open(url, &#34;r&#34;, encoding=encoding) as f:
reader = csv.reader(f, delimiter=&#34;,&#34;)
if self.data is None:
self.data = []
for row in reader:
self.data.append(row)
def export_text(self, url: str):
&#34;&#34;&#34;
Save data as a text file.
Every column is save in its own line as an example.
Args:
url: Output file path.
&#34;&#34;&#34;
with open(url, &#34;w&#34;, encoding=&#34;utf-8&#34;) as file:
for row in self.data:
file.write(&#34;\n&#34;.join(row))
def export_csv(self, url: str):
&#34;&#34;&#34;
Save data as a CSV file with semicolons.
Args:
url: Output file path.
&#34;&#34;&#34;
with open(url, &#34;w&#34;, encoding=&#34;utf-8&#34;) as file:
writer = csv.writer(file, delimiter=&#34;;&#34;)
for row in self.data:
writer.writerow(row)</code></pre>
</details>
</section>
<section>
</section>
<section>
</section>
<section>
</section>
<section>
<h2 class="section-title" id="header-classes">Classes</h2>
<dl>
<dt id="data-conversion.loaders.csvmanager.CSVManager"><code class="flex name class">
<span>class <span class="ident">CSVManager</span></span>
<span>(</span><span>url: str)</span>
</code></dt>
<dd>
<div class="desc"><p>Utility class to keep CSV data for export in other formats.</p>
<h2 id="attributes">Attributes</h2>
<dl>
<dt><strong><code>data</code></strong></dt>
<dd>Contains loaded file data as a list of lists.</dd>
</dl>
<p>Initialize the object with a URL.</p>
<h2 id="args">Args</h2>
<dl>
<dt><strong><code>url</code></strong></dt>
<dd>CSV URL to load from.</dd>
</dl></div>
<details class="source">
<summary>
<span>Expand source code</span>
</summary>
<pre><code class="python">class CSVManager:
&#34;&#34;&#34;
Utility class to keep CSV data for export in other formats.
Attributes:
data: Contains loaded file data as a list of lists.
&#34;&#34;&#34;
data: list = None
def __init__(self, url: str):
&#34;&#34;&#34;
Initialize the object with a URL.
Args:
url: CSV URL to load from.
&#34;&#34;&#34;
self.load(url)
def load(self, url: str, encoding: str = &#34;iso8859-1&#34;):
&#34;&#34;&#34;
Load a CSV given its file path.
Args:
url: Path of the CSV file.
encoding: Codepage name of the text file.
&#34;&#34;&#34;
with open(url, &#34;r&#34;, encoding=encoding) as f:
reader = csv.reader(f, delimiter=&#34;,&#34;)
if self.data is None:
self.data = []
for row in reader:
self.data.append(row)
def export_text(self, url: str):
&#34;&#34;&#34;
Save data as a text file.
Every column is save in its own line as an example.
Args:
url: Output file path.
&#34;&#34;&#34;
with open(url, &#34;w&#34;, encoding=&#34;utf-8&#34;) as file:
for row in self.data:
file.write(&#34;\n&#34;.join(row))
def export_csv(self, url: str):
&#34;&#34;&#34;
Save data as a CSV file with semicolons.
Args:
url: Output file path.
&#34;&#34;&#34;
with open(url, &#34;w&#34;, encoding=&#34;utf-8&#34;) as file:
writer = csv.writer(file, delimiter=&#34;;&#34;)
for row in self.data:
writer.writerow(row)</code></pre>
</details>
<h3>Class variables</h3>
<dl>
<dt id="data-conversion.loaders.csvmanager.CSVManager.data"><code class="name">var <span class="ident">data</span> : list</code></dt>
<dd>
<div class="desc"></div>
</dd>
</dl>
<h3>Methods</h3>
<dl>
<dt id="data-conversion.loaders.csvmanager.CSVManager.export_csv"><code class="name flex">
<span>def <span class="ident">export_csv</span></span>(<span>self, url: str)</span>
</code></dt>
<dd>
<div class="desc"><p>Save data as a CSV file with semicolons.</p>
<h2 id="args">Args</h2>
<dl>
<dt><strong><code>url</code></strong></dt>
<dd>Output file path.</dd>
</dl></div>
<details class="source">
<summary>
<span>Expand source code</span>
</summary>
<pre><code class="python">def export_csv(self, url: str):
&#34;&#34;&#34;
Save data as a CSV file with semicolons.
Args:
url: Output file path.
&#34;&#34;&#34;
with open(url, &#34;w&#34;, encoding=&#34;utf-8&#34;) as file:
writer = csv.writer(file, delimiter=&#34;;&#34;)
for row in self.data:
writer.writerow(row)</code></pre>
</details>
</dd>
<dt id="data-conversion.loaders.csvmanager.CSVManager.export_text"><code class="name flex">
<span>def <span class="ident">export_text</span></span>(<span>self, url: str)</span>
</code></dt>
<dd>
<div class="desc"><p>Save data as a text file.</p>
<p>Every column is save in its own line as an example.</p>
<h2 id="args">Args</h2>
<dl>
<dt><strong><code>url</code></strong></dt>
<dd>Output file path.</dd>
</dl></div>
<details class="source">
<summary>
<span>Expand source code</span>
</summary>
<pre><code class="python">def export_text(self, url: str):
&#34;&#34;&#34;
Save data as a text file.
Every column is save in its own line as an example.
Args:
url: Output file path.
&#34;&#34;&#34;
with open(url, &#34;w&#34;, encoding=&#34;utf-8&#34;) as file:
for row in self.data:
file.write(&#34;\n&#34;.join(row))</code></pre>
</details>
</dd>
<dt id="data-conversion.loaders.csvmanager.CSVManager.load"><code class="name flex">
<span>def <span class="ident">load</span></span>(<span>self, url: str, encoding: str = 'iso8859-1')</span>
</code></dt>
<dd>
<div class="desc"><p>Load a CSV given its file path.</p>
<h2 id="args">Args</h2>
<dl>
<dt><strong><code>url</code></strong></dt>
<dd>Path of the CSV file.</dd>
<dt><strong><code>encoding</code></strong></dt>
<dd>Codepage name of the text file.</dd>
</dl></div>
<details class="source">
<summary>
<span>Expand source code</span>
</summary>
<pre><code class="python">def load(self, url: str, encoding: str = &#34;iso8859-1&#34;):
&#34;&#34;&#34;
Load a CSV given its file path.
Args:
url: Path of the CSV file.
encoding: Codepage name of the text file.
&#34;&#34;&#34;
with open(url, &#34;r&#34;, encoding=encoding) as f:
reader = csv.reader(f, delimiter=&#34;,&#34;)
if self.data is None:
self.data = []
for row in reader:
self.data.append(row)</code></pre>
</details>
</dd>
</dl>
</dd>
</dl>
</section>
</article>
<nav id="sidebar">
<h1>Index</h1>
<div class="toc">
<ul></ul>
</div>
<ul id="index">
<li><h3>Super-module</h3>
<ul>
<li><code><a title="data-conversion.loaders" href="index.html">data-conversion.loaders</a></code></li>
</ul>
</li>
<li><h3><a href="#header-classes">Classes</a></h3>
<ul>
<li>
<h4><code><a title="data-conversion.loaders.csvmanager.CSVManager" href="#data-conversion.loaders.csvmanager.CSVManager">CSVManager</a></code></h4>
<ul class="">
<li><code><a title="data-conversion.loaders.csvmanager.CSVManager.data" href="#data-conversion.loaders.csvmanager.CSVManager.data">data</a></code></li>
<li><code><a title="data-conversion.loaders.csvmanager.CSVManager.export_csv" href="#data-conversion.loaders.csvmanager.CSVManager.export_csv">export_csv</a></code></li>
<li><code><a title="data-conversion.loaders.csvmanager.CSVManager.export_text" href="#data-conversion.loaders.csvmanager.CSVManager.export_text">export_text</a></code></li>
<li><code><a title="data-conversion.loaders.csvmanager.CSVManager.load" href="#data-conversion.loaders.csvmanager.CSVManager.load">load</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</nav>
</main>
<footer id="footer">
<p>Generated by <a href="https://pdoc3.github.io/pdoc"><cite>pdoc</cite> 0.9.2</a>.</p>
</footer>
</body>
</html>