%global _empty_manifest_terminate_build 0
Name: python-tpimporter
Version: 0.7.5
Release: 1
Summary: a package to import excel files - specifically our Titelplanung and TV Titelplanung
License: MIT License
URL: https://github.com/skalizzo/TP_Importer
Source0: https://mirrors.nju.edu.cn/pypi/web/packages/f3/0d/2c4299910afef2e76af2d2d7c4eb7e6087373e48826f08baaaa5ae5254f4/tpimporter-0.7.5.tar.gz
BuildArch: noarch
Requires: python3-openpyxl
Requires: python3-msoffcrypto-tool
%description
# TP Importer
This package is used for importing our main Titelplanung Excel files;
as this data is used in different systems this package provides adapters to use the imported data within different products
## Usage
Usage Example (Transaktional - Feature):
```
def import_tp_data_for_mam():
"""
importiert TP-Daten mit den fürs MAM genutzten Keys
"""
tp_path = "G:\Listen\TPDD aktuell absolutiert.xlsm"
tp_data = TP_Importer().get_tp_data_from_file(tp_path)
tp_data_mam = Adapter_For_MAM().transform(tp_data)
for title in tp_data_mam:
# do something with title
if __name__ == '__main__':
tp_data_mam = import_tp_data_for_mam()
```
Usage Example for TVTP Transaktional:
```
def _get_data(self) -> dict:
"""
diese Methode liest die Daten aus der TV Titelplanung ein
:return: Dict (one entry per series with the series-Basis-VendorID as key) - die Daten zu den Staffeln
kann man als Liste von Dicts unter dem Key "seasons" aufrufen
(auch wieder als Dict mit Key = Season-Basis-VID),
die zu den Episoden sind im Staffel-Dict als Liste von Dicts unter dem Key "episodes" zu finden
(auch wieder als Dict mit Key = Episode-Basis-VID)
"""
filepath = "G:\Listen\TV Titelplanung DD_absolutiert_v2.xlsm"
tp_data = TVTP_Importer(
valid_statuses=(
"ok",
"change",
"new",
"alt/keine Rechte",
"canceled",
"INDIZIERT",
"no avail",
"Rights expired",
"ausgelaufen",
)
).get_tp_data_from_file(filepath)
return tp_data
tp_data = self._get_date()
for vendor_id, series in tqdm(tp_data.items()):
# do something for series
for vendor_id_season, season in series.get('seasons').items():
# do something for seasons
for vendor_id_episode, episode in season.get('episodes').items():
# do something for episodes
```
Usage Example for Channels (Feature):
```
channel_tp_data_feature = dict()
importer = TP_Importer_Channels(
valid_statuses=(("ok", "change", "new"))
)
path = 'G:\Listen\Titelplanung Channels aktuell_absolutiert_new.xlsm'
tp_data = importer.get_tp_data_from_file(path)
print(tp_data.keys())
for channel_type, channel_titles in tp_data.items():
# durch alle Channels iterieren
for title in tqdm(channel_titles):
# durch Titel in jeweiligem Channel iterieren
```
Usage Example for Channels (TV):
```
channel_tp_data_feature = dict()
importer = TVTP_Importer_Channels(
valid_statuses=(("ok", "change", "new"))
)
path = 'G:\Listen\Titelplanung Channels aktuell_absolutiert_new.xlsm'
tp_data = importer.get_tp_data_from_file(path)
print(tp_data.keys())
for channel_type, channel_titles in tp_data.items():
# durch alle Channels iterieren
for vendor_id, series in tqdm(channel_titles.items()):
# do something for series
for vendor_id_season, season in series.get('seasons').items():
# do something for seasons
for vendor_id_episode, episode in season.get('episodes').items():
# do something for episodes
```
%package -n python3-tpimporter
Summary: a package to import excel files - specifically our Titelplanung and TV Titelplanung
Provides: python-tpimporter
BuildRequires: python3-devel
BuildRequires: python3-setuptools
BuildRequires: python3-pip
%description -n python3-tpimporter
# TP Importer
This package is used for importing our main Titelplanung Excel files;
as this data is used in different systems this package provides adapters to use the imported data within different products
## Usage
Usage Example (Transaktional - Feature):
```
def import_tp_data_for_mam():
"""
importiert TP-Daten mit den fürs MAM genutzten Keys
"""
tp_path = "G:\Listen\TPDD aktuell absolutiert.xlsm"
tp_data = TP_Importer().get_tp_data_from_file(tp_path)
tp_data_mam = Adapter_For_MAM().transform(tp_data)
for title in tp_data_mam:
# do something with title
if __name__ == '__main__':
tp_data_mam = import_tp_data_for_mam()
```
Usage Example for TVTP Transaktional:
```
def _get_data(self) -> dict:
"""
diese Methode liest die Daten aus der TV Titelplanung ein
:return: Dict (one entry per series with the series-Basis-VendorID as key) - die Daten zu den Staffeln
kann man als Liste von Dicts unter dem Key "seasons" aufrufen
(auch wieder als Dict mit Key = Season-Basis-VID),
die zu den Episoden sind im Staffel-Dict als Liste von Dicts unter dem Key "episodes" zu finden
(auch wieder als Dict mit Key = Episode-Basis-VID)
"""
filepath = "G:\Listen\TV Titelplanung DD_absolutiert_v2.xlsm"
tp_data = TVTP_Importer(
valid_statuses=(
"ok",
"change",
"new",
"alt/keine Rechte",
"canceled",
"INDIZIERT",
"no avail",
"Rights expired",
"ausgelaufen",
)
).get_tp_data_from_file(filepath)
return tp_data
tp_data = self._get_date()
for vendor_id, series in tqdm(tp_data.items()):
# do something for series
for vendor_id_season, season in series.get('seasons').items():
# do something for seasons
for vendor_id_episode, episode in season.get('episodes').items():
# do something for episodes
```
Usage Example for Channels (Feature):
```
channel_tp_data_feature = dict()
importer = TP_Importer_Channels(
valid_statuses=(("ok", "change", "new"))
)
path = 'G:\Listen\Titelplanung Channels aktuell_absolutiert_new.xlsm'
tp_data = importer.get_tp_data_from_file(path)
print(tp_data.keys())
for channel_type, channel_titles in tp_data.items():
# durch alle Channels iterieren
for title in tqdm(channel_titles):
# durch Titel in jeweiligem Channel iterieren
```
Usage Example for Channels (TV):
```
channel_tp_data_feature = dict()
importer = TVTP_Importer_Channels(
valid_statuses=(("ok", "change", "new"))
)
path = 'G:\Listen\Titelplanung Channels aktuell_absolutiert_new.xlsm'
tp_data = importer.get_tp_data_from_file(path)
print(tp_data.keys())
for channel_type, channel_titles in tp_data.items():
# durch alle Channels iterieren
for vendor_id, series in tqdm(channel_titles.items()):
# do something for series
for vendor_id_season, season in series.get('seasons').items():
# do something for seasons
for vendor_id_episode, episode in season.get('episodes').items():
# do something for episodes
```
%package help
Summary: Development documents and examples for tpimporter
Provides: python3-tpimporter-doc
%description help
# TP Importer
This package is used for importing our main Titelplanung Excel files;
as this data is used in different systems this package provides adapters to use the imported data within different products
## Usage
Usage Example (Transaktional - Feature):
```
def import_tp_data_for_mam():
"""
importiert TP-Daten mit den fürs MAM genutzten Keys
"""
tp_path = "G:\Listen\TPDD aktuell absolutiert.xlsm"
tp_data = TP_Importer().get_tp_data_from_file(tp_path)
tp_data_mam = Adapter_For_MAM().transform(tp_data)
for title in tp_data_mam:
# do something with title
if __name__ == '__main__':
tp_data_mam = import_tp_data_for_mam()
```
Usage Example for TVTP Transaktional:
```
def _get_data(self) -> dict:
"""
diese Methode liest die Daten aus der TV Titelplanung ein
:return: Dict (one entry per series with the series-Basis-VendorID as key) - die Daten zu den Staffeln
kann man als Liste von Dicts unter dem Key "seasons" aufrufen
(auch wieder als Dict mit Key = Season-Basis-VID),
die zu den Episoden sind im Staffel-Dict als Liste von Dicts unter dem Key "episodes" zu finden
(auch wieder als Dict mit Key = Episode-Basis-VID)
"""
filepath = "G:\Listen\TV Titelplanung DD_absolutiert_v2.xlsm"
tp_data = TVTP_Importer(
valid_statuses=(
"ok",
"change",
"new",
"alt/keine Rechte",
"canceled",
"INDIZIERT",
"no avail",
"Rights expired",
"ausgelaufen",
)
).get_tp_data_from_file(filepath)
return tp_data
tp_data = self._get_date()
for vendor_id, series in tqdm(tp_data.items()):
# do something for series
for vendor_id_season, season in series.get('seasons').items():
# do something for seasons
for vendor_id_episode, episode in season.get('episodes').items():
# do something for episodes
```
Usage Example for Channels (Feature):
```
channel_tp_data_feature = dict()
importer = TP_Importer_Channels(
valid_statuses=(("ok", "change", "new"))
)
path = 'G:\Listen\Titelplanung Channels aktuell_absolutiert_new.xlsm'
tp_data = importer.get_tp_data_from_file(path)
print(tp_data.keys())
for channel_type, channel_titles in tp_data.items():
# durch alle Channels iterieren
for title in tqdm(channel_titles):
# durch Titel in jeweiligem Channel iterieren
```
Usage Example for Channels (TV):
```
channel_tp_data_feature = dict()
importer = TVTP_Importer_Channels(
valid_statuses=(("ok", "change", "new"))
)
path = 'G:\Listen\Titelplanung Channels aktuell_absolutiert_new.xlsm'
tp_data = importer.get_tp_data_from_file(path)
print(tp_data.keys())
for channel_type, channel_titles in tp_data.items():
# durch alle Channels iterieren
for vendor_id, series in tqdm(channel_titles.items()):
# do something for series
for vendor_id_season, season in series.get('seasons').items():
# do something for seasons
for vendor_id_episode, episode in season.get('episodes').items():
# do something for episodes
```
%prep
%autosetup -n tpimporter-0.7.5
%build
%py3_build
%install
%py3_install
install -d -m755 %{buildroot}/%{_pkgdocdir}
if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
pushd %{buildroot}
if [ -d usr/lib ]; then
find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/lib64 ]; then
find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/bin ]; then
find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/sbin ]; then
find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
fi
touch doclist.lst
if [ -d usr/share/man ]; then
find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
fi
popd
mv %{buildroot}/filelist.lst .
mv %{buildroot}/doclist.lst .
%files -n python3-tpimporter -f filelist.lst
%dir %{python3_sitelib}/*
%files help -f doclist.lst
%{_docdir}/*
%changelog
* Tue May 30 2023 Python_Bot - 0.7.5-1
- Package Spec generated