minor changes
Browse files
src/01_setup/agenda.qmd
CHANGED
@@ -8,13 +8,13 @@ Im zweiten Schritt werden wir in einem Notebook mit Hilfe großer Sprachmodelle
|
|
8 |
|
9 |
Schließlich, im letzten Schritt, sollen die erlernten Kenntnisse auf konkrete Anwendungsfälle angewandt werden, um die praktische Nutzung und den Mehrwert dieser Techniken zu demonstrieren.
|
10 |
|
11 |
-
###
|
12 |
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
|
19 |
### Flussdiagramm Tutorials
|
20 |
|
|
|
8 |
|
9 |
Schließlich, im letzten Schritt, sollen die erlernten Kenntnisse auf konkrete Anwendungsfälle angewandt werden, um die praktische Nutzung und den Mehrwert dieser Techniken zu demonstrieren.
|
10 |
|
11 |
+
### Ablauf
|
12 |
|
13 |
+
1. Begrüßung und Einführung ab 16:00 Uhr
|
14 |
+
2. No Code Tutorials
|
15 |
+
3. Low Code Tutorials
|
16 |
+
4. Anwendungsfälle
|
17 |
+
5. Abschluss und Ausblick ca. 18:20 Uhr
|
18 |
|
19 |
### Flussdiagramm Tutorials
|
20 |
|
src/01_setup/erforderlich/colab.qmd
CHANGED
@@ -7,20 +7,14 @@ image: _c6cbaab4-a264-43bf-8b0f-311e210cd959.jpeg
|
|
7 |
## Google Colab nutzen
|
8 |
|
9 |
### 1: Öffne Google Colab
|
10 |
-
|
11 |
-
* **Gehe zu Google Colab**:
|
12 |
- Besuche [Google Colab](https://colab.research.google.com/).
|
13 |
- Melde dich mit deinem Google-Konto an, falls erforderlich.
|
14 |
|
15 |
### 2: Neues Notebook erstellen
|
16 |
-
|
17 |
-
* **Erstelle ein neues Notebook**:
|
18 |
- Klicke auf "Datei" in der oberen linken Ecke.
|
19 |
- Wähle "Neues Notebook".
|
20 |
|
21 |
### 3: Upload von Dateien 📁
|
22 |
-
|
23 |
-
* **Dateien hochladen**:
|
24 |
- Klicke im linken Seitenbereich auf das Ordnersymbol.
|
25 |
- Klicke auf das Upload-Symbol (Pfeil nach oben) und wähle die Dateien aus, die du hochladen möchtest.
|
26 |
|
@@ -55,7 +49,7 @@ image: _c6cbaab4-a264-43bf-8b0f-311e210cd959.jpeg
|
|
55 |
|
56 |
## ChatGPT für die Code-Erstellung 📝
|
57 |
|
58 |
-
Um Sprachmodelle
|
59 |
|
60 |
#### Prompterstellung:
|
61 |
|
|
|
7 |
## Google Colab nutzen
|
8 |
|
9 |
### 1: Öffne Google Colab
|
|
|
|
|
10 |
- Besuche [Google Colab](https://colab.research.google.com/).
|
11 |
- Melde dich mit deinem Google-Konto an, falls erforderlich.
|
12 |
|
13 |
### 2: Neues Notebook erstellen
|
|
|
|
|
14 |
- Klicke auf "Datei" in der oberen linken Ecke.
|
15 |
- Wähle "Neues Notebook".
|
16 |
|
17 |
### 3: Upload von Dateien 📁
|
|
|
|
|
18 |
- Klicke im linken Seitenbereich auf das Ordnersymbol.
|
19 |
- Klicke auf das Upload-Symbol (Pfeil nach oben) und wähle die Dateien aus, die du hochladen möchtest.
|
20 |
|
|
|
49 |
|
50 |
## ChatGPT für die Code-Erstellung 📝
|
51 |
|
52 |
+
Um Sprachmodelle zu nutzen, helfen klare und präzise Prompts. Ein guter Prompt enthält alle notwendigen Informationen.
|
53 |
|
54 |
#### Prompterstellung:
|
55 |
|
src/01_setup/vorbereitung.qmd
CHANGED
@@ -13,31 +13,35 @@ Einrichten der Nutzerkonten zur Nutzung der kostenlosen Ressourcen Google Colab
|
|
13 |
|
14 |
## Inhaltliche Vorbereitung
|
15 |
|
16 |
-
|
17 |
-
|
18 |
* "Ich möchte Informationen über die Webseite 'Avaaz' sammeln, um mehr über globale Kampagnen zu erfahren."
|
19 |
* "Ich bin daran interessiert, mehr über 'Change.org' zu lernen, insbesondere im Hinblick auf Petitionen und deren Wirkung."
|
20 |
* "Die Webseite 'Amnesty International' interessiert mich, da ich dort viele Ressourcen zu Menschenrechten finde."
|
|
|
21 |
|
22 |
-
|
23 |
-
|
24 |
* "Ich möchte PDFs über Strategien zur Förderung von Partizipation und Demokratie recherchieren."
|
25 |
* "Ich suche nach PDFs, die sich mit den Auswirkungen von Klimawandel auf soziale Gerechtigkeit befassen."
|
26 |
* "PDFs über die Rolle und Organisation von NGOs in globalen Kontexten interessieren mich."
|
|
|
27 |
|
28 |
-
|
29 |
-
|
30 |
* "Ich möchte Apps kennenlernen, die zur Unterstützung von Gemeinschaftsprojekten beitragen."
|
31 |
* "Ich interessiere mich für Apps, die den Austausch und die Vernetzung von Aktivisten erleichtern."
|
32 |
* "Apps, die zur Mobilisierung und Organisation von Bürger*inneninitiativen nützlich sind, interessieren mich."
|
|
|
33 |
|
34 |
-
|
35 |
-
|
36 |
* "Eine Playlist von Vorträgen über globale Klimapolitik von verschiedenen internationalen Konferenzen, die zusammen mehrere Stunden dauern."
|
37 |
* "Ein Kanal, der ausführliche Dokumentationen über Menschenrechtsverletzungen weltweit zeigt, wobei jedes Video mindestens eine Stunde lang ist."
|
38 |
* "Eine Serie von Interviews mit zivilgesellschaftlichen Akteuren und Experten zum Thema Demokratieförderung, die insgesamt einen ganzen Tag ansehen würde."
|
39 |
* "Lange Diskussionsrunden und Panelgespräche über soziale Gerechtigkeit, die aufgrund ihrer Tiefe und Länge schwer in einer Sitzung zu bearbeiten sind."
|
40 |
* "Eine Sammlung von Workshops und Tutorials zu organisatorischen Strategien für NGOs, die zusammen mehrere Tage in Anspruch nehmen würden."
|
|
|
41 |
|
42 |
## Nutzerkonten einrichten
|
43 |
|
|
|
13 |
|
14 |
## Inhaltliche Vorbereitung
|
15 |
|
16 |
+
::: {.callout-note collapse="true"}
|
17 |
+
### Wählt eine Webseite aus, über die ihr mehr erfahren möchtet.
|
18 |
* "Ich möchte Informationen über die Webseite 'Avaaz' sammeln, um mehr über globale Kampagnen zu erfahren."
|
19 |
* "Ich bin daran interessiert, mehr über 'Change.org' zu lernen, insbesondere im Hinblick auf Petitionen und deren Wirkung."
|
20 |
* "Die Webseite 'Amnesty International' interessiert mich, da ich dort viele Ressourcen zu Menschenrechten finde."
|
21 |
+
:::
|
22 |
|
23 |
+
::: {.callout-note collapse="true"}
|
24 |
+
### Denkt über einen Themenbereich nach, über den ihr gerne PDFs recherchieren würdet.
|
25 |
* "Ich möchte PDFs über Strategien zur Förderung von Partizipation und Demokratie recherchieren."
|
26 |
* "Ich suche nach PDFs, die sich mit den Auswirkungen von Klimawandel auf soziale Gerechtigkeit befassen."
|
27 |
* "PDFs über die Rolle und Organisation von NGOs in globalen Kontexten interessieren mich."
|
28 |
+
:::
|
29 |
|
30 |
+
::: {.callout-note collapse="true"}
|
31 |
+
### Überlegt euch einen Bereich, über den ihr euch gerne über Apps informieren lassen möchtet.
|
32 |
* "Ich möchte Apps kennenlernen, die zur Unterstützung von Gemeinschaftsprojekten beitragen."
|
33 |
* "Ich interessiere mich für Apps, die den Austausch und die Vernetzung von Aktivisten erleichtern."
|
34 |
* "Apps, die zur Mobilisierung und Organisation von Bürger*inneninitiativen nützlich sind, interessieren mich."
|
35 |
+
:::
|
36 |
|
37 |
+
::: {.callout-note collapse="true"}
|
38 |
+
### Bringt eine Liste von YouTube-Videos oder eine YouTube-Playliste mit, deren Umfang eure erfügbare Zeit strapazieren würde und sich daher für Zusammenfassungen anbietet.
|
39 |
* "Eine Playlist von Vorträgen über globale Klimapolitik von verschiedenen internationalen Konferenzen, die zusammen mehrere Stunden dauern."
|
40 |
* "Ein Kanal, der ausführliche Dokumentationen über Menschenrechtsverletzungen weltweit zeigt, wobei jedes Video mindestens eine Stunde lang ist."
|
41 |
* "Eine Serie von Interviews mit zivilgesellschaftlichen Akteuren und Experten zum Thema Demokratieförderung, die insgesamt einen ganzen Tag ansehen würde."
|
42 |
* "Lange Diskussionsrunden und Panelgespräche über soziale Gerechtigkeit, die aufgrund ihrer Tiefe und Länge schwer in einer Sitzung zu bearbeiten sind."
|
43 |
* "Eine Sammlung von Workshops und Tutorials zu organisatorischen Strategien für NGOs, die zusammen mehrere Tage in Anspruch nehmen würden."
|
44 |
+
:::
|
45 |
|
46 |
## Nutzerkonten einrichten
|
47 |
|
src/02_basics/webspider/website-url-extractor.qmd
CHANGED
@@ -4,10 +4,15 @@ description: "Ein Tool zur Extraktion und Darstellung aller Links von einer ange
|
|
4 |
image: _1fca0884-d58a-4271-b90f-90afcb2c4be9.jpeg
|
5 |
---
|
6 |
|
|
|
|
|
|
|
|
|
|
|
7 |
## Funktionen
|
8 |
- **Webseitenanalyse**: Automatische Extraktion aller URLs von einer Webseite.
|
9 |
- **Filterung**: Nur vollständige Links (z. B. beginnend mit `http`) werden angezeigt.
|
10 |
-
- **Einfaches Interface**: Eingabefeld für die
|
11 |
|
12 |
## Anleitung
|
13 |
|
@@ -15,7 +20,7 @@ image: _1fca0884-d58a-4271-b90f-90afcb2c4be9.jpeg
|
|
15 |
- Zur [Webseiten-URL-Extraktor-App](https://huggingface.co/spaces/datenwerkzeuge/Webseiten-URL-Extraktor) auf Hugging Face navigieren.
|
16 |
|
17 |
### 2. Eingabemethode wählen
|
18 |
-
- Eingabemethode auswählen: **
|
19 |
|
20 |
### 3. URLs extrahieren
|
21 |
|
@@ -56,6 +61,41 @@ Die Auflistungsfunktion wiederholt die Extraktion für jeden Link im Dokument un
|
|
56 |
|
57 |
Das Webseiten-URL-Extraktor-Tool bietet verdeutlicht das Filtern von Links auf Webseiten oder aus HTML-Dateien, indem es nur vollständige URLs darstellt.
|
58 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
59 |
## Anwendungsfall
|
60 |
|
61 |
-
[Dead Link Checker](https://www.deadlinkchecker.com/) ist ein Online-Tool das nicht funktionierende Links (Dead Links) auf Webseiten identifiziert. An diesem Fall ist erkennbar wie eine einfache Anwendung, wie der URL-Extraktor, als Bestandteil in einer Geschäftsanwendung eingesetzt werden kann.
|
|
|
4 |
image: _1fca0884-d58a-4271-b90f-90afcb2c4be9.jpeg
|
5 |
---
|
6 |
|
7 |
+
## Lernziele
|
8 |
+
|
9 |
+
* Was ist eine URLs?
|
10 |
+
* Aus welchen Bestandteilen besteht eine URLs?
|
11 |
+
|
12 |
## Funktionen
|
13 |
- **Webseitenanalyse**: Automatische Extraktion aller URLs von einer Webseite.
|
14 |
- **Filterung**: Nur vollständige Links (z. B. beginnend mit `http`) werden angezeigt.
|
15 |
+
- **Einfaches Interface**: Eingabefeld für die URLs und eine klare Liste der extrahierten Links.
|
16 |
|
17 |
## Anleitung
|
18 |
|
|
|
20 |
- Zur [Webseiten-URL-Extraktor-App](https://huggingface.co/spaces/datenwerkzeuge/Webseiten-URL-Extraktor) auf Hugging Face navigieren.
|
21 |
|
22 |
### 2. Eingabemethode wählen
|
23 |
+
- Eingabemethode auswählen: **URLs** oder **HTML-Datei hochladen**.
|
24 |
|
25 |
### 3. URLs extrahieren
|
26 |
|
|
|
61 |
|
62 |
Das Webseiten-URL-Extraktor-Tool bietet verdeutlicht das Filtern von Links auf Webseiten oder aus HTML-Dateien, indem es nur vollständige URLs darstellt.
|
63 |
|
64 |
+
### Was ist eine URL?
|
65 |
+
|
66 |
+
Eine **URL** (Uniform Resource Locator) ist die Adresse eines bestimmten Dokuments oder Ressourcen im Internet. Sie dient dazu, Webanwendungen und -dienste eindeutig zu identifizieren und darauf zuzugreifen.
|
67 |
+
|
68 |
+
### Bestandteile einer URL
|
69 |
+
|
70 |
+
Eine typische URL besteht aus mehreren Teilen:
|
71 |
+
|
72 |
+
- **Schema**: Gibt das Protokoll an, das verwendet wird, um die Ressource zu erreichen (z.B. `http`, `https`, `ftp`).
|
73 |
+
|
74 |
+
- **Host**: Der Name oder die IP-Adresse des Servers, auf dem die Ressource gespeichert ist (z.B. `example.com`).
|
75 |
+
|
76 |
+
- **Port**: Optional; spezifiziert den Port, über den die Verbindung hergestellt wird, wenn es nicht der Standardport ist (z.B. `80` für HTTP oder `443` für HTTPS).
|
77 |
+
|
78 |
+
- **Pfad**: Zeigt den spezifischen Ort der Ressource auf dem Server an (z.B. `/pfad/zur/ressource.html`).
|
79 |
+
|
80 |
+
- **Query-Parameter**: Optional; verwendet, um zusätzliche Daten an den Server zu übergeben, oft nach einem `?` (z.B. `?id=123&name=test`).
|
81 |
+
|
82 |
+
- **Fragment**: Optional; identifiziert einen bestimmten Teil der Ressource, häufig verwendet in HTML-Dokumenten für interne Navigation (z.B. `#abschnitt`).
|
83 |
+
|
84 |
+
### Beispiel einer vollständigen URL:
|
85 |
+
|
86 |
+
```plaintext
|
87 |
+
https://www.example.com:443/pfad/zur/ressource.html?id=123&name=test#abschnitt
|
88 |
+
```
|
89 |
+
|
90 |
+
* Schema: `https`
|
91 |
+
* Host: `www.example.com`
|
92 |
+
* Port: `443`
|
93 |
+
* Pfad: `/pfad/zur/ressource.html`
|
94 |
+
* Query-Parameter: `id=123&name=test`
|
95 |
+
* Fragment: `abschnitt`
|
96 |
+
|
97 |
+
Mit dieser Struktur kann ein Browser oder ein anderes Netzwerkprogramm die genaue Adresse einer Ressource im Internet bestimmen und darauf zugreifen.
|
98 |
+
|
99 |
## Anwendungsfall
|
100 |
|
101 |
+
[Dead Link Checker](https://www.deadlinkchecker.com/) ist ein Online-Tool das nicht funktionierende Links (Dead Links) auf Webseiten identifiziert. An diesem Fall ist erkennbar wie eine einfache Anwendung, wie der URL-Extraktor, als Bestandteil in einer Geschäftsanwendung eingesetzt werden kann.
|
src/02_basics/webspider/webspider.qmd
CHANGED
@@ -4,6 +4,13 @@ description: "Eine private Webanwendung zur Extraktion strukturierter Daten von
|
|
4 |
image: _24e522b8-a6d0-4212-a02e-7738b3098105.jpeg
|
5 |
---
|
6 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7 |
## Anleitung
|
8 |
|
9 |
1. **Anwendung aufrufen**:
|
@@ -34,4 +41,4 @@ Die Anwendung eignet sich für die Datenerfassung aus öffentlich zugänglichen
|
|
34 |
|
35 |
## Fazit
|
36 |
|
37 |
-
Die Webspider-Anwendung bietet eine praktische Einführung in die Welt des Webscrapings, indem sie Nutzern die Möglichkeit gibt, Daten von Webseiten zu extrahieren, zu analysieren und zu exportieren. Sie vermittelt wesentliche Kenntnisse in der Handhabung von Scraping-Parametern.
|
|
|
4 |
image: _24e522b8-a6d0-4212-a02e-7738b3098105.jpeg
|
5 |
---
|
6 |
|
7 |
+
## Lernziel
|
8 |
+
|
9 |
+
- Start-URLs und URL-Verwaltung
|
10 |
+
- HTTP-Anfragen und Datenextraktion
|
11 |
+
- Links folgen und Crawl-Tiefe
|
12 |
+
- Datenverarbeitung und -speicherung
|
13 |
+
|
14 |
## Anleitung
|
15 |
|
16 |
1. **Anwendung aufrufen**:
|
|
|
41 |
|
42 |
## Fazit
|
43 |
|
44 |
+
Die Webspider-Anwendung bietet eine praktische Einführung in die Welt des Webscrapings, indem sie Nutzern die Möglichkeit gibt, Daten von Webseiten zu extrahieren, zu analysieren und zu exportieren. Sie vermittelt wesentliche Kenntnisse in der Handhabung von Scraping-Parametern.
|
src/index.qmd
CHANGED
@@ -6,7 +6,7 @@ Herzlich willkommen zum Webscraping Workshop! Egal, ob Erste-Schritte oder Fortg
|
|
6 |
* Hast du ein Google Nutzerkonto?
|
7 |
* Hast du ein Huggingface Nutzerkonto?
|
8 |
* Hast du schon einmal Daten aus dem Internet extrahiert?
|
9 |
-
* Hast du schonmal Daten über eine
|
10 |
* Nutzt du Große Sprachmodelle?
|
11 |
|
12 |
## Navigation auf der Workshop Webseite 🧭
|
|
|
6 |
* Hast du ein Google Nutzerkonto?
|
7 |
* Hast du ein Huggingface Nutzerkonto?
|
8 |
* Hast du schon einmal Daten aus dem Internet extrahiert?
|
9 |
+
* Hast du schonmal Daten über eine API bezogen?
|
10 |
* Nutzt du Große Sprachmodelle?
|
11 |
|
12 |
## Navigation auf der Workshop Webseite 🧭
|