Warum JavaScript Ihr bester Helfer bei der Automatisierung ist
Haben Sie sich jemals dabei ertappt, dass Sie Stunden mit sich wiederholenden Tätigkeiten verbringen: Hunderte von Dateien umbenennen, Daten aus Tabellen kopieren, Dutzende von E-Mails versenden oder überprüfen, ob eine Website nicht abgestürzt ist? Wenn ja, dann ist dieser Artikel für Sie.
JavaScript ist längst nicht mehr nur die "Sprache für Button-Animationen". Mit dem Aufkommen von Node.js und leistungsstarken Bibliotheken hat es sich zu einem universellen Werkzeug für die Aufgabenautomatisierung entwickelt. Und ja, selbst wenn Sie ein Python-Entwickler sind, kann JS Ihre Geheimwaffe sein: Es funktioniert überall – im Browser, auf dem Server, in der Cloud und sogar auf dem Raspberry Pi.
In diesem Artikel werden wir reale Automatisierungsszenarien mit JavaScript durchgehen, die Ihnen Dutzende von Stunden sparen werden. Kein überflüssiges Gerede – nur Code und Praxis.
1. Browserautomatisierung: Puppeteer und Playwright
Stellen Sie sich vor: Sie müssen Preise von 500 Seiten eines Online-Shops sammeln, aber es gibt keine API. Manuelles Kopieren und Einfügen? Nein, danke. Hier kommt Puppeteer zur Hilfe – eine Bibliothek zur Steuerung von Chromium.
Beispiel: Parsen von Nachrichtenüberschriften
const puppeteer = require('puppeteer');
(async () => { const browser = await puppeteer.launch({ headless: true }); const page = await browser.newPage(); await page.goto('https://news.ycombinator.com', { waitUntil: 'networkidle2' }); const titles = await page.evaluate(() => { const items = document.querySelectorAll('.titleline > a'); return Array.from(items).map(item => item.innerText); }); console.log('Neueste Nachrichten:', titles.slice(0, 10)); await browser.close();})();Dieses Skript öffnet Hacker News, sammelt die Überschriften der ersten 10 Nachrichten und gibt sie in der Konsole aus. Im echten Leben könnten Sie das Speichern in CSV, das Senden an Telegram oder das Schreiben in eine Datenbank hinzufügen.
Playwright – eine Alternative mit Superkräften
Wenn Sie mit mehreren Browsern (Chrome, Firefox, Safari) arbeiten oder mobile Geräte emulieren müssen, verwenden Sie Playwright. Es ist schneller, stabiler und kann Anfragen abfangen.
2. Dateiverwaltung: Umbenennen, Sortieren, Bereinigen
Sie haben einen Ordner mit 1000 Fotos, die Namen wie "IMG_20250101_123456.jpg" haben? Möchten Sie sie in eine Ordnung bringen? Das integrierte Modul fs (File System) in Node.js erledigt das in Sekundenschnelle.
Beispiel: Massenumbenennung von Dateien
const fs = require('fs');const path = require('path');
const directory = './photos';
fs.readdir(directory, (err, files) => { if (err) throw err; files.forEach((file, index) => { const ext = path.extname(file); const newName = `photo_${String(index + 1).padStart(4, '0')}${ext}`; fs.rename( path.join(directory, file), path.join(directory, newName), (err) => { if (err) console.error(`Fehler bei Datei ${file}:`, err); else console.log(`${file} → ${newName}`); } ); });});Sie können das Skript leicht modifizieren: einen Filter nach Erweiterung hinzufügen, das Datum aus EXIF extrahieren, nach einer Vorlage umbenennen. Dies ist die Basis, auf der Dutzende von Dienstprogrammen aufbauen.
3. Automatisierung der Arbeit mit CSV und Excel (ohne Office-Paket)
Geschäftliche Aufgaben erfordern oft die Verarbeitung von Tabellen. Für CSV verwenden Sie das integrierte Modul oder die Bibliothek csv-parser. Für Excel – xlsx (SheetJS).
Beispiel: CSV lesen und einen Bericht erstellen
const fs = require('fs');const csv = require('csv-parser');const createCsvWriter = require('csv-writer').createObjectCsvWriter;
const results = [];
fs.createReadStream('orders.csv') .pipe(csv()) .on('data', (row) => { if (parseFloat(row.total) > 100) { results.push({ orderId: row.id, client: row.name, sum: row.total }); } }) .on('end', () => { const csvW