mirror of
https://github.com/fhswf/aki_prj23_transparenzregister.git
synced 2025-05-13 19:18:47 +02:00
commit
aa6c0efc87
14
.gitignore
vendored
14
.gitignore
vendored
@ -1,5 +1,15 @@
|
||||
# Temporary hosting of Deutschland/Bundesanzeiger library
|
||||
**/deutschland
|
||||
# LaTeX temp files
|
||||
**/*.aux
|
||||
**/*-blx.bib
|
||||
**/*.bbl
|
||||
**/*.blg
|
||||
**/*.lof
|
||||
**/*.out
|
||||
**/*.log
|
||||
**/*.run.xml
|
||||
**/*.synctex.gz
|
||||
**/*.toc
|
||||
# Credentials
|
||||
*secrets.json
|
||||
*secrets_prod.json
|
||||
|
||||
|
@ -0,0 +1,35 @@
|
||||
---
|
||||
title: "Automatisierte Daten Extraktion aus Internetquellen als Grundlage für die Analyse von Kapitalgesellschaften"
|
||||
author: "Nolde, Tristan Norbert"
|
||||
date: "2023-05-06"
|
||||
---
|
||||
|
||||
# Abstract: Automatisierte Daten Extraktion aus Internetquellen als Grundlage für die Analyse von Kapitalgesellschaften
|
||||
|
||||
## Gliederung
|
||||
1. Einleitung (Zielsetzung/Problemstellung, Vorgehen)
|
||||
2. Web Scraping/Crawling
|
||||
1. Definition und Theorie
|
||||
2. Technologien
|
||||
3. Umsetzung
|
||||
3. RSS Feeds
|
||||
1. Definition und Theorie
|
||||
2. Technologien
|
||||
3. Umsetzung
|
||||
4. APIs
|
||||
1. Definition und Theorie
|
||||
2. Technologien
|
||||
3. Umsetzung
|
||||
5. Rechtliche Rahmenbedingungen
|
||||
6. Vergleich der Lösungsansätze
|
||||
7. Zusammenfassung
|
||||
|
||||
## Inhalt
|
||||
|
||||
In Zeiten von Big Data und AI stellen Daten und ihre Verfügbarkeit zunehmend eines der wichtigsten Wirtschaftsgüter dar. Als solches können sie auch eingesetzt werden, um Kapitalgesellschaften (eine Subklasse von Unternehmen) anhand verschiedener Kennzahlen wie der Mitarbeiterzahl oder dem Jahresgewinn zu analysieren. Obwohl solche Daten zu Genüge in Zeitungsartikeln, Newslettern oder dedizierten Aktienanalysen zu finden sind, so gestaltet sich eine automatisierte Extraktion dieser Daten aufgrund verschiedener Formate sowie weiterer Restriktionen schwierig.
|
||||
|
||||
Daher sollen im Rahmen dieser Seminararbeit verschiedene Wege betrachtet werden, die eben diese Daten erheben und zur Verfügung stellen können. Zu den nennenswerten Quellen gehören: Der Bundesanzeiger, RSS Feeds, Nachrichten APIs. Ziel ist es, aus diesen Quellen wertvolle Informationen bezogen auf den wirtschaftlichen Erfolg einer Kapitalgesellschaft sowie aktueller Nachrichten zu extrahieren und in ein einheitliches Format zu überführen.
|
||||
|
||||
Neben des technischen Einsatzes von Web Scraping/Crawling, um Informationen aus Webseiten zu gewinnen, sowie des Abfragens verfügbarer APIs soll auch der rechltiche Aspekt dieser Vorgehens Berücksichtigung finden, um die Rechtmäßigkeit zu bewerten.
|
||||
|
||||
Abschließend wird der Einsatz der verschiedenen Technologien an den Faktoren: Flexibilität, Simplizität, Verfügbarkeit und Rechtmäßigkeit, ein Fazit gezogen sowie ein Ausblick des weiteren Einsatzes gegeben.
|
Binary file not shown.
Binary file not shown.
@ -13,7 +13,7 @@
|
||||
|
||||
### Zum Thema Container (Docker Compose)
|
||||
|
||||
- Das Projektteam wird einen Portainer-Zugang erhalten und würde gerne Docker Compose verwenden, sodass auf die Verwendung von Kubernetes verzichtet werden kann. 3 Processing-Container und 2 Datenbank-Container sind vorgesehen.
|
||||
- Das Projektteam wird einen Portainer-Zugang erhalten und würde gerne Docker Compose verwenden, so dass auf die Verwendung von Kubernetes verzichtet werden kann. 3 Processing-Container und 2 Datenbank-Container sind vorgesehen.
|
||||
|
||||
- Laut Projektteam wird es sich um ein Web-Frontend handeln, die Quellen sind parallelisiert, es wird einen Lauf für Unternehmensregister und einen Lauf für tagesschau.de benötigt; es geht hier um eine Handvoll Datensätzen mit ca. 1 Kilobyte
|
||||
|
||||
|
80
documentations/meeting-notes/Meeting_2023-09-28.md
Normal file
80
documentations/meeting-notes/Meeting_2023-09-28.md
Normal file
@ -0,0 +1,80 @@
|
||||
# Weekly *11*: 29.09.2023
|
||||
|
||||
|
||||
## Teilnehmer
|
||||
- Prof. Arinir
|
||||
- Tristan Nolde
|
||||
- Tim Ronneburg
|
||||
- Phillip Horstenkamp
|
||||
- Kim Mesewinkel-Risse
|
||||
- Sebastian Zeleny
|
||||
|
||||
## Themen
|
||||
|
||||
- Status:
|
||||
- Verflechtungsanalyse und Visualisierung
|
||||
- Multi-Page Layout ist vorhanden
|
||||
- Erster Wurf der NetworkX Integration vorhanden
|
||||
- Laufzeitprobleme bei Auswertung der gesamten Datenbasis
|
||||
- Daher reduziert auf zunächst zehn Einträge
|
||||
- Platzierung der Berechnung aktuell im Dash Callback - vermutlich zu viele parallele Aufrufe und daher Leistungseinbusse
|
||||
- Verflechung wird ebenfalls im "Company-Details-Tab" angeboten
|
||||
- Nächste Schritte:
|
||||
- Performance Bottleneck beheben
|
||||
- Graphen mit Farben versehen
|
||||
- An echte Daten anschließen
|
||||
- NER + Sentiment:
|
||||
- Nun ein Jupyter Notebook mit Aspect-Oriented Sentiment Analys
|
||||
- Problem der max. Token length im Transfomer durch Batching gelöst
|
||||
- Gesamtergebniss wird dann aus den Batches aggregiert
|
||||
- String-Matching, um ähnliche Companies zu finden
|
||||
- Allgemein:
|
||||
- Unternehmensnamen:
|
||||
- Begriff GmbH nicht geschützt, so dass freie Kombinationen möglich sind
|
||||
- Fragen:
|
||||
- Besteht der Wunsch nach einer dokumentierten Projekt-Abnahme in der Abschluss-Dokumentation?
|
||||
- In Ausarbeitungen können gerne Referenzen zum Projektmanagement aufgenommen werden, jedoch nicht in Übermaß.
|
||||
- Der Fokus liegt mehr auf der Technik als der Organisation
|
||||
- Ziel ist: Implementierung mit entsprechender Dokumentation
|
||||
- Der Abschlussbericht ist nicht näher spezifiziert.
|
||||
- unter anderem wäre es möglich die Zwischenberichte aus Ausgangspunkt zu nehmen und dort weiterzuführen bzw. näher zu spezifizieren
|
||||
- Abschlussbericht in gleichem Layout z.B. LaTeX Template. Die form soll von der Gruppe festgelegt werden.
|
||||
- Nächste Woche Donnerstag um 20:00 ist ein Termin mit Prof. Gawron um den Portainer stack zu initalisieren. Eingeladen ist die ganze Gruppe. Es mag kommen wer interesse hat.
|
||||
|
||||
|
||||
|
||||
|
||||
## Abgeleitete Action Items
|
||||
|
||||
Die abgestimmte Ordner Struktur für die Abgabe ist wie folgt anzulegen:
|
||||
```js
|
||||
/Ergebnisse
|
||||
/Zwischenbericht_und_Praesentation
|
||||
/KiMe
|
||||
pptx
|
||||
pdf
|
||||
/TrNo
|
||||
...
|
||||
/SeZe
|
||||
...
|
||||
/TiRo
|
||||
...
|
||||
/PhHo
|
||||
...
|
||||
/SaZh
|
||||
...
|
||||
/Abschlussbericht_und_Praesentation
|
||||
/KiMe
|
||||
pptx
|
||||
pdf
|
||||
/TrNo
|
||||
...
|
||||
/SeZe
|
||||
...
|
||||
/TiRo
|
||||
...
|
||||
/PhHo
|
||||
...
|
||||
/SaZh
|
||||
...
|
||||
```
|
@ -1,46 +0,0 @@
|
||||
---
|
||||
title: "Automatisierte Daten Extraktion aus Internetquellen als Grundlage für die Analyse von Kapitalgesellschaften"
|
||||
author: "Nolde, Tristan Norbert"
|
||||
date: "2023-05-06"
|
||||
---
|
||||
|
||||
# Abstract: Automatisierte Daten Extraktion aus Internetquellen als Grundlage für die Analyse von Kapitalgesellschaften
|
||||
|
||||
## Gliederung
|
||||
|
||||
1. Einleitung (Zielsetzung/Problemstellung, Vorgehen)
|
||||
2. Web Scraping/Crawling
|
||||
2.1. Definition und Theorie
|
||||
2.2. Technologien
|
||||
2.3. Umsetzung
|
||||
3. RSS-Feeds
|
||||
3.1. Definition und Theorie
|
||||
3.2. Technologien
|
||||
3.3. Umsetzung
|
||||
4. APIs
|
||||
4.1. Definition und Theorie
|
||||
4.2. Technologien
|
||||
4.3. Umsetzung
|
||||
5. Rechtliche Rahmenbedingungen
|
||||
6. Vergleich der Lösungsansätze
|
||||
7. Zusammenfassung
|
||||
|
||||
## Inhalt
|
||||
|
||||
In Zeiten von Big Data und AI stellen Daten und ihre Verfügbarkeit zunehmend eines der wichtigsten Wirtschaftsgüter dar.
|
||||
Als solches können sie auch eingesetzt werden, um Kapitalgesellschaften (eine Subklasse von Unternehmen) anhand
|
||||
verschiedener Kennzahlen wie der Mitarbeiterzahl oder dem Jahresgewinn zu analysieren. Obwohl solche Daten zu Genüge in
|
||||
Zeitungsartikeln, Newslettern oder dedizierten Aktienanalysen zu finden sind, so gestaltet sich eine automatisierte
|
||||
Extraktion dieser Daten aufgrund verschiedener Formate sowie weiterer Restriktionen schwierig.
|
||||
|
||||
Daher sollen im Rahmen dieser Seminararbeit verschiedene Wege betrachtet werden, die eben diese Daten erheben und zur
|
||||
Verfügung stellen können. Zu den nennenswerten Quellen gehören: Der Bundesanzeiger, RSS-Feeds, Nachrichten APIs. Ziel
|
||||
ist es, aus diesen Quellen wertvolle Informationen bezogen auf den wirtschaftlichen Erfolg einer Kapitalgesellschaft
|
||||
sowie aktueller Nachrichten zu extrahieren und in ein einheitliches Format zu überführen.
|
||||
|
||||
Neben des technischen Einsatzes von Web Scraping/Crawling, um Informationen aus Webseiten zu gewinnen, sowie des
|
||||
Abfragens verfügbarer APIs soll auch der rechtliche Aspekt dieser Vorgehens Berücksichtigung finden, um die
|
||||
Rechtmäßigkeit zu bewerten.
|
||||
|
||||
Abschließend wird der Einsatz der verschiedenen Technologien an den Faktoren: Flexibilität, Simplizität, Verfügbarkeit
|
||||
und Rechtmäßigkeit, ein Fazit gezogen sowie ein Ausblick des weiteren Einsatzes gegeben.
|
BIN
documentations/templates/Ausarbeitung-LaTeX/Ausarbeitung.pdf
Normal file
BIN
documentations/templates/Ausarbeitung-LaTeX/Ausarbeitung.pdf
Normal file
Binary file not shown.
44
documentations/templates/Ausarbeitung-LaTeX/Ausarbeitung.tex
Normal file
44
documentations/templates/Ausarbeitung-LaTeX/Ausarbeitung.tex
Normal file
@ -0,0 +1,44 @@
|
||||
\documentclass[a4paper, numbers=withenddot, 11pt]{scrartcl}
|
||||
|
||||
% Vorlage fuer Ausarbeitungen
|
||||
% Getestet mit pdfTeX; Kodierung: UTF8
|
||||
% Version 2023-08-19
|
||||
|
||||
% Hier Daten eintragen:
|
||||
\newcommand{\name}{Max Mustermann}
|
||||
\newcommand{\modulname}{Name des Moduls}
|
||||
\newcommand{\thema}{Titel der Ausarbeitung}
|
||||
\newcommand{\hochschule}{Fachhochschule Südwestfalen}
|
||||
\newcommand{\datum}{\today}
|
||||
% Ende der Daten
|
||||
|
||||
\usepackage[utf8]{inputenc}
|
||||
\usepackage[T1]{fontenc}
|
||||
\usepackage{lmodern}
|
||||
\usepackage[ngerman]{babel}
|
||||
\usepackage[style=alphabetic, backend=biber, bibencoding=utf8]{biblatex}
|
||||
\addbibresource{literatur.bib}\usepackage{csquotes}
|
||||
\usepackage{booktabs}
|
||||
\usepackage{microtype}
|
||||
\usepackage{graphicx}
|
||||
\usepackage{scrhack}
|
||||
\usepackage{setspace}\setstretch{1.1}
|
||||
\parindent0pt\parskip6pt
|
||||
\clubpenalty=10000
|
||||
\widowpenalty=10000
|
||||
\displaywidowpenalty=10000
|
||||
|
||||
\usepackage{listings}
|
||||
\renewcommand{\lstlistingname}{Listing}
|
||||
\lstset{basicstyle=\small\ttfamily, breaklines=true, numbers=left, keepspaces=true, columns=fixed}
|
||||
|
||||
\title{\thema}
|
||||
\author{\name\\ \hochschule \\[5mm] Schriftliche Ausarbeitung im Modul\\ „\modulname“}
|
||||
|
||||
\begin{document}
|
||||
\maketitle
|
||||
\tableofcontents
|
||||
\input{mainmatter}
|
||||
\printbibliography
|
||||
\include{erklaerung}
|
||||
\end{document}
|
BIN
documentations/templates/Ausarbeitung-LaTeX/einstein.jpg
Normal file
BIN
documentations/templates/Ausarbeitung-LaTeX/einstein.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 96 KiB |
12
documentations/templates/Ausarbeitung-LaTeX/erklaerung.tex
Normal file
12
documentations/templates/Ausarbeitung-LaTeX/erklaerung.tex
Normal file
@ -0,0 +1,12 @@
|
||||
\section*{Erklärung}
|
||||
|
||||
Ich erkläre hiermit, dass ich die vorliegende Arbeit selbstständig verfasst und dabei keine anderen als die angegebenen Hilfsmittel benutzt habe. Sämtliche Stellen der Arbeit, die im Wortlaut oder dem Sinn nach Werken anderer Autoren entnommen sind, habe ich als solche kenntlich gemacht. Die Arbeit wurde bisher weder gesamt noch in Teilen einer anderen Prüfungsbehörde vorgelegt und auch noch nicht veröffentlicht.
|
||||
|
||||
\bigskip
|
||||
\noindent
|
||||
\datum
|
||||
|
||||
\vspace{25mm}
|
||||
|
||||
\noindent
|
||||
\name
|
18
documentations/templates/Ausarbeitung-LaTeX/literatur.bib
Normal file
18
documentations/templates/Ausarbeitung-LaTeX/literatur.bib
Normal file
@ -0,0 +1,18 @@
|
||||
@book{knuth,
|
||||
author = {Knuth, Donald E.},
|
||||
title = {The Art of Computer Programming},
|
||||
subtitle = {Fundamental Algorithms},
|
||||
volume = {1},
|
||||
publisher = {Addison-Wesley},
|
||||
location = {Reading, Massachusetts},
|
||||
edition = {3},
|
||||
year = {1997}
|
||||
}
|
||||
|
||||
@online{scheme,
|
||||
author = {Shinn, Alex and Cowan, John and Gleckler, Arthur A.},
|
||||
title = {Scheme Reports Process},
|
||||
year = {2013},
|
||||
urldate = {2020-07-13},
|
||||
url = {http://www.scheme-reports.org/}
|
||||
}
|
78
documentations/templates/Ausarbeitung-LaTeX/mainmatter.tex
Normal file
78
documentations/templates/Ausarbeitung-LaTeX/mainmatter.tex
Normal file
@ -0,0 +1,78 @@
|
||||
\section{Überschrift Ebene eins}
|
||||
|
||||
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
|
||||
|
||||
Zitat aus \cite{scheme} und \cite[17]{knuth}. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum.
|
||||
Es folgt eine Abbildungen. Abbildung \ref{abb_einstein} kann referenziert werden.
|
||||
|
||||
\begin{figure}[htbp]
|
||||
\centering
|
||||
\includegraphics[scale=0.5]{einstein}
|
||||
\caption{Beschreibung der Abbildung.}
|
||||
\label{abb_einstein}
|
||||
\end{figure}
|
||||
|
||||
\subsection{Überschrift Ebene zwei}
|
||||
|
||||
At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua.
|
||||
|
||||
\section{Aufzählungen, Tabellen und Programmcode}
|
||||
|
||||
Eine Aufzählung:
|
||||
|
||||
\begin{itemize}
|
||||
\item Lorem ipsum
|
||||
\item dolor sit amet
|
||||
\item consetetur sadipscing elitr
|
||||
\item sed diam nonumy
|
||||
\end{itemize}
|
||||
Eine nummerierte Aufzählung:
|
||||
|
||||
\begin{enumerate}
|
||||
\item Erster Punkt
|
||||
\item Zweiter Punkt
|
||||
\item Dritter Punkt
|
||||
\end{enumerate}
|
||||
Es folgt Tabelle \ref{beispieltabelle}.
|
||||
|
||||
\begin{table}[htbp]
|
||||
\centering
|
||||
\begin{tabular}{lrc}
|
||||
\toprule
|
||||
Linksbündig & Rechtsbündig & Zentriert \\
|
||||
\midrule
|
||||
Lorem & 13 & amet \\ \addlinespace
|
||||
ipsum & 104 & consetetur \\ \addlinespace
|
||||
dolor & 7 & sadipscing \\ \addlinespace
|
||||
sit & -5 & elitr \\
|
||||
\bottomrule
|
||||
\end{tabular}
|
||||
\caption{Beschreibung der Tabelle.}
|
||||
\label{beispieltabelle}
|
||||
\end{table}
|
||||
|
||||
Programmcode im Fließtext: \lstinline{printf("Hello, world!\n");}.
|
||||
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
|
||||
Es folgt Programmlisting \ref{beispiellisting}.
|
||||
|
||||
\begin{lstlisting}[caption={Beschreibung des Listings.}, label=beispiellisting, frame=tblr]
|
||||
#include <stdio.h>
|
||||
|
||||
int main(void)
|
||||
{
|
||||
printf("Hello, world!\n");
|
||||
}
|
||||
\end{lstlisting}
|
||||
Ein Listing ohne Titel, welches nicht im Listingverzeichnis aufgefühert wird:
|
||||
|
||||
\begin{lstlisting}[numbers=none]
|
||||
#include <stdio.h>
|
||||
|
||||
int main(void)
|
||||
{
|
||||
printf("Hello, world\n");
|
||||
}
|
||||
\end{lstlisting}
|
||||
|
||||
Text kann \emph{kursiv} oder \textbf{fett} gesetzt werden.
|
||||
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
|
BIN
documentations/templates/FH-SWF_template.potx
Normal file
BIN
documentations/templates/FH-SWF_template.potx
Normal file
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user