DrissionPage ist eine Seite, die aus Treiber und Sitzung besteht. Es handelt sich um ein Python-basiertes Integrationstool für den Web-Automatisierungsbetrieb.
Es verwendet den POM-Modus, um gängige Methoden für Seiten und Elemente zu kapseln, und verfügt über eine Reihe einfacher, intuitiver und eleganter Elementpositionierungssyntax, die unter Berücksichtigung der Bequemlichkeit der Browserautomatisierung und der hohen Effizienz einen nahtlosen Wechsel zwischen Browsern und Anforderungen ermöglicht Effizienz und noch besser: Die Verwendung ist sehr prägnant und benutzerfreundlich, mit weniger Code und benutzerfreundlich.
Wenn Sie Anfragen zur Datenerfassung verwenden und auf eine Website stoßen, auf der Sie sich anmelden möchten, müssen Sie Datenpakete und JS-Quellcode analysieren, komplexe Anfragen erstellen und häufig mit Anti-Crawling-Methoden wie Bestätigungscodes und JS-Verschleierung umgehen , und Signaturparameter Der Schwellenwert ist hoch. Wenn die Daten durch JS-Berechnung generiert werden, muss der Berechnungsprozess reproduziert werden, was zu einer schlechten Erfahrung und einer geringen Entwicklungseffizienz führt.
Durch die Verwendung eines Browsers können diese Fallstricke weitgehend umgangen werden, allerdings ist der Browser nicht sehr effizient. Daher kombiniert diese Bibliothek sie zu einem, schaltet bei Bedarf die entsprechenden Modi um und bietet eine humanisierte Nutzungsmethode zur Verbesserung der Entwicklungs- und Betriebseffizienz.
Diese Bibliothek vereint nicht nur beides, sondern kapselt auch häufig verwendete Funktionen in Webseiteneinheiten und bietet sehr einfache Operationen und Anweisungen. Bei der Verwendung für automatisierte Webseitenoperationen wird die Notwendigkeit reduziert, Details zu berücksichtigen und sich auf die Funktionsimplementierung zu konzentrieren bequem zu verwenden.
Halten Sie alles einfach, versuchen Sie, einfache und direkte Verwendungsmethoden bereitzustellen und seien Sie freundlicher gegenüber Anfängern.
Der Autor ist auf unzählige Fallstricke getreten und hat alle Erfahrungen in dieser Bibliothek zusammengefasst. Es sind viele praktische Funktionen integriert und die häufig verwendeten Funktionen wurden integriert und optimiert.
Merkmal
1. Der Code ist hochintegriert, mit prägnantem Code als erstem Ziel.
2. Das Seitenobjekt kann nach Belieben zwischen Browser und Anfrage umgeschaltet werden und der Anmeldestatus bleibt erhalten.
3. Extrem einfache, aber leistungsstarke Syntax zur Elementpositionierung, unterstützt Kettenoperationen und der Code ist äußerst prägnant.
4. Die beiden Modi bieten konsistente APIs und ein konsistentes Nutzungserlebnis.
5. Humanisiertes Design, das viele praktische Funktionen integriert und den Entwicklungsaufwand erheblich reduziert.
1. Sie können den geöffneten Browser jedes Mal wiederverwenden, wenn Sie das Programm ausführen. Versetzen Sie die Webseite beispielsweise manuell in einen bestimmten Zustand und verwenden Sie dann ein Programm zur Übernahme, oder verwalten Sie die Anmeldung manuell und verwenden Sie dann das Programm zum Crawlen des Inhalts. Es ist nicht nötig, den Browser jedes Mal von vorne zu starten, was sehr praktisch ist.
2. Verwenden Sie INI-Dateien, um häufig verwendete Konfigurationen zu speichern und automatisch aufzurufen. Es bietet auch eine praktische Einstellungs-API, um komplizierte Konfigurationselemente zu vermeiden.
3. Die äußerst prägnante Positionierungssyntax unterstützt die direkte Positionierung von Elementen durch Text und den direkten Erhalt der Geschwisterelemente und übergeordneten Elemente davor und danach.
4. Leistungsstarkes Download-Tool, mit dem Sie beim Betrieb des Browsers eine schnelle und zuverlässige Download-Funktion genießen können.
5. Das Download-Tool unterstützt mehrere Methoden zur Behandlung von Dateinamenkonflikten, zur automatischen Erstellung von Zielpfaden, zum Trennen und erneuten Versuchen usw.
6. Die Zugriffs-URL verfügt über eine automatische Wiederholungsfunktion und das Intervall und die Timeout-Zeit können eingestellt werden.
7. Beim Zugriff auf Webseiten kann die Kodierung ohne manuelle Einstellung automatisch erkannt werden.
8. Link-Parameter generieren standardmäßig automatisch Host- und Referrer-Attribute.
9. Sie können das Browser-Prozessfenster jederzeit direkt ausblenden oder anzeigen, ohne dass es kopflos oder minimiert ist.
10. Der entsprechende Chrome-Treiber kann automatisch heruntergeladen werden, wodurch lästige Konfigurationen entfallen.
11. Das Suchelement im D-Modus verfügt über eine integrierte Wartezeit, und die globale Wartezeit oder die Wartezeit für eine einzelne Suche kann beliebig eingestellt werden.
12. Das Click-Element integriert die js-Click-Methode, und die Click-Methode kann mit einem Parameter umgeschaltet werden.
13. Klicks unterstützen fehlgeschlagene Wiederholungsversuche, die verwendet werden können, um erfolgreiche Klicks sicherzustellen, festzustellen, ob die Webseitenmaskenebene verschwindet usw.
14. Die Texteingabe kann automatisch feststellen, ob sie erfolgreich ist, und unter bestimmten Umständen erneut versuchen, ungültige Eingaben oder Löschungen zu vermeiden.
15. Der d-Modus unterstützt XPath mit vollem Funktionsumfang, der ein Attribut eines Elements direkt abrufen kann. Selenium verfügt nativ nicht über diese Funktion.
16. Unterstützt die direkte Erfassung von Schattenwurzeln und betreibt die darunter liegenden Elemente wie gewöhnliche Elemente.
17. Unterstützt den direkten Zugriff auf den Inhalt von After- und Before-Pseudoelementen.
18. Sie können > direkt unter dem Element verwenden, um mithilfe des CSS-Selektors die direkten untergeordneten Elemente des aktuellen Elements abzurufen. Diese Schreibmethode wird nativ nicht unterstützt.
19. Sie können einfach lxml verwenden, um D-Modus-Seiten oder -Elemente zu analysieren, und die Geschwindigkeit beim Crawlen komplexer Seitendaten wird erheblich verbessert.
20. Die Ausgabedaten wurden transkodiert und für den Grundsatz verarbeitet, um Doppelarbeit zu reduzieren.
21. Es kann problemlos mit Selenium verbunden werden oder nativen Code anfordern, um die Projektmigration zu erleichtern.
22. Mit der POM-Modus-Verpackung kann es direkt zum Testen verwendet und einfach erweitert werden.
23. Die D-Modus-Konfiguration ist gleichzeitig mit debugger_address und anderen Parametern kompatibel, die native Konfiguration ist jedoch nicht kompatibel.
24. Es gibt noch viele weitere, die hier nicht aufgeführt sind ...