%global _empty_manifest_terminate_build 0
Name: python-feedcrawler
Version: 18.1.0
Release: 1
Summary: Automate downloads using predefined sites and the My JDownloader API
License: MIT License
URL: https://github.com/rix1337/FeedCrawler
Source0: https://mirrors.nju.edu.cn/pypi/web/packages/4b/f8/c93fcffb93f428f5d53299bb1a52bef24e5e6c93a3bdc8010f504472a917/feedcrawler-18.1.0.tar.gz
BuildArch: noarch
Requires: python3-beautifulsoup4
Requires: python3-bottle
Requires: python3-pycryptodomex
Requires: python3-pystray
%description
# FeedCrawler
FeedCrawler automatisiert bequem das Hinzufügen von Links für den JDownloader.
[](https://github.com/rix1337/FeedCrawler/actions/workflows/CreateRelease.yml)
[](https://github.com/rix1337/FeedCrawler/stargazers)
[](https://github.com/rix1337/FeedCrawler/releases)
[](https://pypi.org/project/feedcrawler/)
[](https://pypi.org/project/feedcrawler/#files)
[](https://hub.docker.com/r/rix1337/docker-feedcrawler/tags)
[](https://hub.docker.com/r/rix1337/docker-feedcrawler/)
[](https://github.com/rix1337/FeedCrawler/blob/main/LICENSE.md)
[](https://github.com/rix1337/FeedCrawler/tree/main/feedcrawler)
[](https://github.com/rix1337/FeedCrawler/tree/main/feedcrawler/web_interface/vuejs_frontend)
[](https://github.com/rix1337/FeedCrawler/commits/main)
[](https://github.com/rix1337/FeedCrawler/graphs/commit-activity)
[](https://github.com/rix1337/FeedCrawler/pulse)
[](https://github.com/users/rix1337/sponsorship)
[](https://discord.gg/enn4AG3VnM)
[](https://github.com/rix1337/FeedCrawler/issues)
***
## Installation
## Manuelle Installation
### Voraussetzungen
* [Python 3.8](https://www.python.org/downloads/) oder neuer (nur 4 [externe Abhängigkeiten](https://github.com/rix1337/FeedCrawler/blob/main/requirements.txt)!)
* [JDownloader 2](http://www.jdownloader.org/jdownloader2) mit aktivem [My JDownloader-Konto](https://my.jdownloader.org)
* _optional: [FlareSolverr 3](https://github.com/FlareSolverr/FlareSolverr) um Cloudflare-Blockaden zu umgehen_
### Installation / Update durch [pip](https://pip.pypa.io/en/stable/installation/)
```pip install -U feedcrawler```
Hinweise zur manuellen Installation und Einrichtung finden sich im [Wiki](https://github.com/rix1337/FeedCrawler/wiki)!
### Lokaler Build
Benötigt [Node.js](https://nodejs.org/en/download/), [npm](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) und [pip](https://pip.pypa.io/en/stable/installation/):
1. Frontend-Pfad aufrufen: `cd feedcrawler/web_interface/vuejs_frontend`
2. Dependencies installieren: `npm ci`
3. [Vue.js 3](https://vuejs.org/) Frontend kompilieren: `npm run build`
4. Zurück in das Hauptverzeichnis wechseln: `cd ../../..`
5. FeedCrawler auf Basis der _setup.py_ installieren: `pip install .`
### Start
```feedcrawler``` in der Konsole (Python muss im System-PATH hinterlegt sein)
### [Docker Image](https://hub.docker.com/r/rix1337/docker-feedcrawler/)
* Der Betrieb als Docker-Container empfiehlt sich als Standardinstallation - vor allem für NAS-Systeme, Homeserver und
sonstige Geräte die dauerhaft und möglichst wartungsfrei (headless) betrieben werden sollen.
* Bei jedem Release wird ein getaggtes Image erstellt. Damit kann man auf der Wunschversion verbleiben oder im Falle
eines Bugs zu einer stabilen Version zurück kehren.
* Um immer auf dem aktuellen Stand zu sein, einfach das mit `latest` getaggte Image nutzen.
* Für UNRAID-Server kann das Image direkt über die Community Applications bezogen und der Container so eingerichtet
werden.
### Windows Build
* Jedem [Release](https://github.com/rix1337/FeedCrawler/releases) wird eine selbstständig unter Windows lauffähige
Version des FeedCrawlers beigefügt.
* Hierfür müssen weder Python, noch die Zusatzpakete installiert werden.
* Einfach die jeweilige Exe herunterladen und ausführen bzw. bei Updates die Exe ersetzen.
## Hostnamen
FeedCrawler kann zum Durchsuchen beliebiger Webseiten verwendet werden. Welche das sind, entscheiden Anwender durch das
Befüllen der _FeedCrawler.ini_ in der Kategorie _[Hostnames]_. Eingetragen werden dort Hostnamen, bspw. _ab = xyz.com_.
* Welche Hostname aufgerufen werden entscheidet allein der Anwender.
* Ist nicht mindestens ein Hostname gesetzt, wird der FeedCrawler nicht starten.
* Passen Hostnamen nicht zum jeweiligen Suchmuster des FeedCrawlers, sind Fehlermeldungen möglich.
## Startparameter
| Parameter | Erläuterung |
|--------------------------------|---|
| ```--log-level=``` | Legt fest, wie genau geloggt wird (`CRITICAL`, `ERROR`, `WARNING`, `INFO`, `DEBUG`, `NOTSET`) |
| ```--config=""``` | Legt den Ablageort für Einstellungen und Logs fest |
| ```--port=``` | Legt den Port des Webservers fest |
| ```--jd-user=``` | Legt den Nutzernamen für My JDownloader fest |
| ```--jd-pass=``` | Legt das Passwort für My JDownloader fest |
| ```--jd-device=``` | Legt den Gerätenamen für My JDownloader fest (optional, wenn nur ein Gerät vorhanden ist) |
| ```--delay=``` | Verzögere Suchlauf nach Start um ganze Zahl in Sekunden (optional) |
| ```--no-gui``` | Startet FeedCrawler ohne GUI (optional) |
## Sicherheitshinweis
Der Webserver sollte nie ohne Absicherung im Internet freigegeben werden. Dazu lassen sich im Webinterface Nutzername
und Passwort festlegen.
Es empfiehlt sich, zusätzlich einen Reverse-Proxy mit HTTPs-Zertifikat,
bspw. [kostenlos von letsencrypt](https://letsencrypt.org/), zu verwenden.
## Credits
* [mmarquezs](https://github.com/mmarquezs/) (My JDownloader-API für Python)
* [JetBrains PyCharm](https://www.jetbrains.com/?from=FeedCrawler) (Open-Source-Lizenz für dieses Projekt)
%package -n python3-feedcrawler
Summary: Automate downloads using predefined sites and the My JDownloader API
Provides: python-feedcrawler
BuildRequires: python3-devel
BuildRequires: python3-setuptools
BuildRequires: python3-pip
%description -n python3-feedcrawler
# FeedCrawler
FeedCrawler automatisiert bequem das Hinzufügen von Links für den JDownloader.
[](https://github.com/rix1337/FeedCrawler/actions/workflows/CreateRelease.yml)
[](https://github.com/rix1337/FeedCrawler/stargazers)
[](https://github.com/rix1337/FeedCrawler/releases)
[](https://pypi.org/project/feedcrawler/)
[](https://pypi.org/project/feedcrawler/#files)
[](https://hub.docker.com/r/rix1337/docker-feedcrawler/tags)
[](https://hub.docker.com/r/rix1337/docker-feedcrawler/)
[](https://github.com/rix1337/FeedCrawler/blob/main/LICENSE.md)
[](https://github.com/rix1337/FeedCrawler/tree/main/feedcrawler)
[](https://github.com/rix1337/FeedCrawler/tree/main/feedcrawler/web_interface/vuejs_frontend)
[](https://github.com/rix1337/FeedCrawler/commits/main)
[](https://github.com/rix1337/FeedCrawler/graphs/commit-activity)
[](https://github.com/rix1337/FeedCrawler/pulse)
[](https://github.com/users/rix1337/sponsorship)
[](https://discord.gg/enn4AG3VnM)
[](https://github.com/rix1337/FeedCrawler/issues)
***
## Installation
## Manuelle Installation
### Voraussetzungen
* [Python 3.8](https://www.python.org/downloads/) oder neuer (nur 4 [externe Abhängigkeiten](https://github.com/rix1337/FeedCrawler/blob/main/requirements.txt)!)
* [JDownloader 2](http://www.jdownloader.org/jdownloader2) mit aktivem [My JDownloader-Konto](https://my.jdownloader.org)
* _optional: [FlareSolverr 3](https://github.com/FlareSolverr/FlareSolverr) um Cloudflare-Blockaden zu umgehen_
### Installation / Update durch [pip](https://pip.pypa.io/en/stable/installation/)
```pip install -U feedcrawler```
Hinweise zur manuellen Installation und Einrichtung finden sich im [Wiki](https://github.com/rix1337/FeedCrawler/wiki)!
### Lokaler Build
Benötigt [Node.js](https://nodejs.org/en/download/), [npm](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) und [pip](https://pip.pypa.io/en/stable/installation/):
1. Frontend-Pfad aufrufen: `cd feedcrawler/web_interface/vuejs_frontend`
2. Dependencies installieren: `npm ci`
3. [Vue.js 3](https://vuejs.org/) Frontend kompilieren: `npm run build`
4. Zurück in das Hauptverzeichnis wechseln: `cd ../../..`
5. FeedCrawler auf Basis der _setup.py_ installieren: `pip install .`
### Start
```feedcrawler``` in der Konsole (Python muss im System-PATH hinterlegt sein)
### [Docker Image](https://hub.docker.com/r/rix1337/docker-feedcrawler/)
* Der Betrieb als Docker-Container empfiehlt sich als Standardinstallation - vor allem für NAS-Systeme, Homeserver und
sonstige Geräte die dauerhaft und möglichst wartungsfrei (headless) betrieben werden sollen.
* Bei jedem Release wird ein getaggtes Image erstellt. Damit kann man auf der Wunschversion verbleiben oder im Falle
eines Bugs zu einer stabilen Version zurück kehren.
* Um immer auf dem aktuellen Stand zu sein, einfach das mit `latest` getaggte Image nutzen.
* Für UNRAID-Server kann das Image direkt über die Community Applications bezogen und der Container so eingerichtet
werden.
### Windows Build
* Jedem [Release](https://github.com/rix1337/FeedCrawler/releases) wird eine selbstständig unter Windows lauffähige
Version des FeedCrawlers beigefügt.
* Hierfür müssen weder Python, noch die Zusatzpakete installiert werden.
* Einfach die jeweilige Exe herunterladen und ausführen bzw. bei Updates die Exe ersetzen.
## Hostnamen
FeedCrawler kann zum Durchsuchen beliebiger Webseiten verwendet werden. Welche das sind, entscheiden Anwender durch das
Befüllen der _FeedCrawler.ini_ in der Kategorie _[Hostnames]_. Eingetragen werden dort Hostnamen, bspw. _ab = xyz.com_.
* Welche Hostname aufgerufen werden entscheidet allein der Anwender.
* Ist nicht mindestens ein Hostname gesetzt, wird der FeedCrawler nicht starten.
* Passen Hostnamen nicht zum jeweiligen Suchmuster des FeedCrawlers, sind Fehlermeldungen möglich.
## Startparameter
| Parameter | Erläuterung |
|--------------------------------|---|
| ```--log-level=``` | Legt fest, wie genau geloggt wird (`CRITICAL`, `ERROR`, `WARNING`, `INFO`, `DEBUG`, `NOTSET`) |
| ```--config=""``` | Legt den Ablageort für Einstellungen und Logs fest |
| ```--port=``` | Legt den Port des Webservers fest |
| ```--jd-user=``` | Legt den Nutzernamen für My JDownloader fest |
| ```--jd-pass=``` | Legt das Passwort für My JDownloader fest |
| ```--jd-device=``` | Legt den Gerätenamen für My JDownloader fest (optional, wenn nur ein Gerät vorhanden ist) |
| ```--delay=``` | Verzögere Suchlauf nach Start um ganze Zahl in Sekunden (optional) |
| ```--no-gui``` | Startet FeedCrawler ohne GUI (optional) |
## Sicherheitshinweis
Der Webserver sollte nie ohne Absicherung im Internet freigegeben werden. Dazu lassen sich im Webinterface Nutzername
und Passwort festlegen.
Es empfiehlt sich, zusätzlich einen Reverse-Proxy mit HTTPs-Zertifikat,
bspw. [kostenlos von letsencrypt](https://letsencrypt.org/), zu verwenden.
## Credits
* [mmarquezs](https://github.com/mmarquezs/) (My JDownloader-API für Python)
* [JetBrains PyCharm](https://www.jetbrains.com/?from=FeedCrawler) (Open-Source-Lizenz für dieses Projekt)
%package help
Summary: Development documents and examples for feedcrawler
Provides: python3-feedcrawler-doc
%description help
# FeedCrawler
FeedCrawler automatisiert bequem das Hinzufügen von Links für den JDownloader.
[](https://github.com/rix1337/FeedCrawler/actions/workflows/CreateRelease.yml)
[](https://github.com/rix1337/FeedCrawler/stargazers)
[](https://github.com/rix1337/FeedCrawler/releases)
[](https://pypi.org/project/feedcrawler/)
[](https://pypi.org/project/feedcrawler/#files)
[](https://hub.docker.com/r/rix1337/docker-feedcrawler/tags)
[](https://hub.docker.com/r/rix1337/docker-feedcrawler/)
[](https://github.com/rix1337/FeedCrawler/blob/main/LICENSE.md)
[](https://github.com/rix1337/FeedCrawler/tree/main/feedcrawler)
[](https://github.com/rix1337/FeedCrawler/tree/main/feedcrawler/web_interface/vuejs_frontend)
[](https://github.com/rix1337/FeedCrawler/commits/main)
[](https://github.com/rix1337/FeedCrawler/graphs/commit-activity)
[](https://github.com/rix1337/FeedCrawler/pulse)
[](https://github.com/users/rix1337/sponsorship)
[](https://discord.gg/enn4AG3VnM)
[](https://github.com/rix1337/FeedCrawler/issues)
***
## Installation
## Manuelle Installation
### Voraussetzungen
* [Python 3.8](https://www.python.org/downloads/) oder neuer (nur 4 [externe Abhängigkeiten](https://github.com/rix1337/FeedCrawler/blob/main/requirements.txt)!)
* [JDownloader 2](http://www.jdownloader.org/jdownloader2) mit aktivem [My JDownloader-Konto](https://my.jdownloader.org)
* _optional: [FlareSolverr 3](https://github.com/FlareSolverr/FlareSolverr) um Cloudflare-Blockaden zu umgehen_
### Installation / Update durch [pip](https://pip.pypa.io/en/stable/installation/)
```pip install -U feedcrawler```
Hinweise zur manuellen Installation und Einrichtung finden sich im [Wiki](https://github.com/rix1337/FeedCrawler/wiki)!
### Lokaler Build
Benötigt [Node.js](https://nodejs.org/en/download/), [npm](https://docs.npmjs.com/downloading-and-installing-node-js-and-npm) und [pip](https://pip.pypa.io/en/stable/installation/):
1. Frontend-Pfad aufrufen: `cd feedcrawler/web_interface/vuejs_frontend`
2. Dependencies installieren: `npm ci`
3. [Vue.js 3](https://vuejs.org/) Frontend kompilieren: `npm run build`
4. Zurück in das Hauptverzeichnis wechseln: `cd ../../..`
5. FeedCrawler auf Basis der _setup.py_ installieren: `pip install .`
### Start
```feedcrawler``` in der Konsole (Python muss im System-PATH hinterlegt sein)
### [Docker Image](https://hub.docker.com/r/rix1337/docker-feedcrawler/)
* Der Betrieb als Docker-Container empfiehlt sich als Standardinstallation - vor allem für NAS-Systeme, Homeserver und
sonstige Geräte die dauerhaft und möglichst wartungsfrei (headless) betrieben werden sollen.
* Bei jedem Release wird ein getaggtes Image erstellt. Damit kann man auf der Wunschversion verbleiben oder im Falle
eines Bugs zu einer stabilen Version zurück kehren.
* Um immer auf dem aktuellen Stand zu sein, einfach das mit `latest` getaggte Image nutzen.
* Für UNRAID-Server kann das Image direkt über die Community Applications bezogen und der Container so eingerichtet
werden.
### Windows Build
* Jedem [Release](https://github.com/rix1337/FeedCrawler/releases) wird eine selbstständig unter Windows lauffähige
Version des FeedCrawlers beigefügt.
* Hierfür müssen weder Python, noch die Zusatzpakete installiert werden.
* Einfach die jeweilige Exe herunterladen und ausführen bzw. bei Updates die Exe ersetzen.
## Hostnamen
FeedCrawler kann zum Durchsuchen beliebiger Webseiten verwendet werden. Welche das sind, entscheiden Anwender durch das
Befüllen der _FeedCrawler.ini_ in der Kategorie _[Hostnames]_. Eingetragen werden dort Hostnamen, bspw. _ab = xyz.com_.
* Welche Hostname aufgerufen werden entscheidet allein der Anwender.
* Ist nicht mindestens ein Hostname gesetzt, wird der FeedCrawler nicht starten.
* Passen Hostnamen nicht zum jeweiligen Suchmuster des FeedCrawlers, sind Fehlermeldungen möglich.
## Startparameter
| Parameter | Erläuterung |
|--------------------------------|---|
| ```--log-level=``` | Legt fest, wie genau geloggt wird (`CRITICAL`, `ERROR`, `WARNING`, `INFO`, `DEBUG`, `NOTSET`) |
| ```--config=""``` | Legt den Ablageort für Einstellungen und Logs fest |
| ```--port=``` | Legt den Port des Webservers fest |
| ```--jd-user=``` | Legt den Nutzernamen für My JDownloader fest |
| ```--jd-pass=``` | Legt das Passwort für My JDownloader fest |
| ```--jd-device=``` | Legt den Gerätenamen für My JDownloader fest (optional, wenn nur ein Gerät vorhanden ist) |
| ```--delay=``` | Verzögere Suchlauf nach Start um ganze Zahl in Sekunden (optional) |
| ```--no-gui``` | Startet FeedCrawler ohne GUI (optional) |
## Sicherheitshinweis
Der Webserver sollte nie ohne Absicherung im Internet freigegeben werden. Dazu lassen sich im Webinterface Nutzername
und Passwort festlegen.
Es empfiehlt sich, zusätzlich einen Reverse-Proxy mit HTTPs-Zertifikat,
bspw. [kostenlos von letsencrypt](https://letsencrypt.org/), zu verwenden.
## Credits
* [mmarquezs](https://github.com/mmarquezs/) (My JDownloader-API für Python)
* [JetBrains PyCharm](https://www.jetbrains.com/?from=FeedCrawler) (Open-Source-Lizenz für dieses Projekt)
%prep
%autosetup -n feedcrawler-18.1.0
%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-feedcrawler -f filelist.lst
%dir %{python3_sitelib}/*
%files help -f doclist.lst
%{_docdir}/*
%changelog
* Fri May 05 2023 Python_Bot - 18.1.0-1
- Package Spec generated