Ich erstelle einen Python-Webcrawler und geplanten Scraper mit einer Datenbank
Python Data Engineer: Web Scraping, ETL Pipelines und Data Enrichment
Level 1
Hat bestimmte Leistungskriterien erfüllt und zeigt großes Potenzial auf dem Marktplatz.
Über diesen Service
Ein Scraper, der nur einmal läuft, ist eine Datei. Ein Scraper, der jede Woche läuft, ist ein System, und der Unterschied liegt darin, was passiert, wenn sich das Layout der Seite ändert. Die meisten brechen stillschweigend, und das Dashboard ist zwei Wochen lang falsch, bevor es jemand bemerkt.
Was ich baue
- Maßgeschneiderte Scraper und Crawler in Python, für eine oder viele Seiten
- Geplante Läufe auf deinem Server oder in der Cloud, die in PostgreSQL, BigQuery oder Sheets schreiben
- Wiederholungen, Ratenbegrenzung, Proxy-Rotation und Handling für Logins und JavaScript
- Benachrichtigungen, wenn ein Feld leer zurückkommt, was zeigt, wie stille Fehler entdeckt werden
Was du bekommst
- Den funktionierenden Scraper und den Quellcode, den du behalten und ändern kannst
- Setup-Dokumente, die für den nächsten Betreiber geschrieben sind, nicht nur für dich
- Eine kurze Übergabe, damit er ohne mich neu bereitgestellt werden kann
Ich habe den Crawler gebaut, der die Proxy-Erklärungen aller großen US-amerikanischen und europäischen Fluggesellschaften gesammelt und strukturiert hat.
Ich sage lieber, dass eine Quelle eine schlechte Idee ist, als etwas Bruchanfälliges darauf aufzubauen. Schick mir die Seite und wie oft du die Daten brauchst, dann schätze ich den Aufwand und mache dir ein Angebot, bevor du bestellst.
Technologie:
Python
•
Puppenspieler
•
Selen
•
Beautiful Soup
•
Dramatiker
Technik:
Automatisiert
Mein Portfolio
FAQ
Automatische Übersetzung
Bekomme ich den Quellcode?
Ja, alles davon, und es gehört dir, um es zu modifizieren, neu bereitzustellen oder an einen anderen Entwickler weiterzugeben. Keine Lizenz, keine Laufzeitabhängigkeit von mir, keine Obfuskation. Das Repository kommt mit einer Readme, die Installation, Konfiguration und die Änderung der gesammelten Felder beschreibt.
Kann es laufen, ohne dass ich eingreifen muss?
Dafür sind die Standard- und Premium-Versionen da. Auf deinem eigenen Server, einer kleinen Cloud-VM oder AWS Lambda geplant, mit Protokollierung, die du lesen kannst, und Benachrichtigungen, wenn ein Lauf fehlschlägt oder nichts zurückgibt. Wo es läuft, liegt in deiner Hand, und ich richte es dort ein, wo du möchtest.
Was passiert, wenn sich die Website ändert und es dadurch kaputt geht?
Zwei Dinge verringern den Schaden. Selektoren, die gegen stabile Strukturen statt generierte Klassen geschrieben sind, damit kleine Neugestaltungen es nicht zerbrechen. Und eine Validierungsprüfung, die alarmiert, wenn ein Feld anfängt, leer zurückzugeben, damit du es am selben Tag erfährst und nicht erst nach zwei Wochen.
In welche Datenbanken kann es schreiben?
PostgreSQL, MySQL, SQLite, BigQuery, MongoDB oder einfache CSV- und Parquet-Dateien, falls eine Datenbank mehr ist, als du brauchst. Google Sheets funktioniert bei kleineren Volumen. Sag mir, welche Datenquellen du danach hast, und ich schreibe sie in das, was sie erwartet.
Kann es Preise oder Lagerbestände im Zeitverlauf verfolgen?
Ja, und das ist einer der besten Gründe, es zu bauen statt zu kaufen. Geplante Läufe mit erhaltenem Verlauf bedeuten, dass du Bewegungen sehen kannst, statt nur einen Schnappschuss. Premium beinhaltet die Änderungsüberwachung und die dazugehörigen Benachrichtigungen.
Was ist mit schwerem Anti-Bot-Schutz?
Echte Browser-Sitzungen in Playwright, Rotation von Wohnsitz-Proxys, menschliches Tempo bei der Ausführung und Sitzungsbeständigkeit. Die meisten Seiten sind machbar. Einige sind den Aufwand nicht wert, und ich werde das ehrlich sagen, anstatt dir ein Angebot für einen Kampf zu machen. Schick mir zuerst die URL, und ich prüfe es.
Kannst du es nach der Lieferung warten?
Monatliche Wartung ist als separate Vereinbarung möglich: Ich überwache die Benachrichtigungen, behebe Fehler und passe an, wenn sich die Quelle ändert. Viele Kunden nehmen den Code und laufen ihn selbst, weshalb die Dokumentation für einen Fremden geschrieben ist.
Wie unterscheidet sich das von deinem Data-Scraping-Gig?
Dieses Gig liefert eine Datei. Das hier liefert eine Maschine, die die Datei erstellt. Wenn du die Daten nur einmal brauchst, bestell das andere, es ist günstiger und schneller. Wenn du sie nächsten Monat wieder brauchst, ist das hier die richtige Wahl, und der zweite Lauf rechnet sich dann.
Wie lange dauert ein Build?
Drei Tage für einen Single-Site-Scraper mit Quellcode. Fünf Tage, wenn er geplant ist und in eine Datenbank schreibt. Sieben Tage für einen Multi-Site-Crawler mit Überwachung und Übergabedokumenten. Das Datum nenne ich, nachdem ich die Seite gesehen habe, und die Komplexität bestimmt den Zeitrahmen vor deiner Bestellung.
Kannst du einen Scraper reparieren oder übernehmen, den jemand anderes gebaut hat?
Ja. Schick mir das Repository und sag, was falsch läuft. Ich komme mit einer Liste, was kaputt ist, ob es günstiger ist, es zu reparieren, als neu zu bauen, und eine ehrliche Antwort, wenn das nicht der Fall ist. Manchmal ist die Antwort, dass der Code in Ordnung ist und sich die Quelle geändert hat.
