Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Einreichen
ToolsExploitsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
nodriver — Nachfolger von Undetected-Chromedriver. Bietet ein blitzschnelles Framework für Web-Automatisierung, Web-Scraping, Bots und alle anderen kreativen Ideen, die normalerweise von lästigen Anti-Bot-Systemen wie Captcha / CloudFlare / Imperva / hCaptcha behindert werden. | Kitploit
Tools/GitHubGitHub/ultrafunkamsterdam/nodriver
Phishing-ToolsWeb-Proxys & AbfangenIDS/IPS-UmgehungImpersonations-ToolsScripting & AutomatisierungWAF-UmgehungWebsicherheitCrawlerAnti-Bot

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen
Fingerabdruck-Spoofing
CAPTCHA-Umgehung
GitHubultrafunkamsterdam/nodriver

nodriver

Nachfolger von Undetected-Chromedriver. Bietet ein blitzschnelles Framework für Web-Automatisierung, Web-Scraping, Bots und alle anderen kreativen Ideen, die normalerweise von lästigen Anti-Bot-Systemen wie Captcha / CloudFlare / Imperva / hCaptcha behindert werden.

Repository anzeigen
4.6k43082vor 4 MonatenVon Kitploit geprüft

NODRIVER

nodriver bietet eine erstklassige asynchrone Webscraping- und Browserautomatisierungs-Bibliothek für Python mit einer einfachen Oberfläche, die einfach Sinn ergibt ™

  • Dies ist der offizielle Nachfolger des Undetected-Chromedriver Python-Pakets.
  • Kein Webdriver mehr, kein Selenium mehr

Für die Dokumentation hier klicken

Die direkte Kommunikation bietet einen noch besseren Schutz gegen Web Application Firewalls (WAFs), während die Leistung massiv gesteigert wird. Dieses Modul ist – anders als undetected-chromedriver – vollständig asynchron.

Was dieses Paket von anderen bekannten Paketen unterscheidet, ist die Optimierung, bei den meisten Anti-Bot-Lösungen unentdeckt zu bleiben.

Ein weiterer Schwerpunkt liegt auf Benutzerfreundlichkeit und schnellem Prototyping, daher kannst du erwarten, dass vieles -as is- funktioniert, wobei die meisten Methodenparameter best practice-Standardwerte haben. Mit 1 oder 2 Zeilen ist es einsatzbereit und liefert standardmäßig eine Best-Practice-Konfiguration. Es räumt anschließend die erzeugten Dateien (Profil) auf.

Bekannt funktionsfähig mit

  • chromium
  • chrome
  • edge
  • brave

Während Benutzerfreundlichkeit und Komfort wichtig sind, ist es auch einfach, alles mithilfe der gesamten Palette der verfügbaren CDP-Domänen, Methoden und Ereignisse vollständig anzupassen.

Einige Funktionen

  • Keine Abhängigkeit von einer Chromedriver-Binärdatei oder Selenium

  • In 1 Zeile Code einsatzbereit*

  • verwendet bei jedem Lauf ein frisches Profil und räumt beim Beenden auf

  • Cookies in Datei speichern und laden, um mühsame Login-Schritte zu vermeiden

  • tab.find("sometext")

    tab.find_all("sometext")

    tab.select("a[class*=something]")

    tab.select_all("a[href] > div > img")

    Intelligente und performante Elementsuche per Selektor oder Text, einschließlich Iframe-Inhalten. Dies kann auch als Wartebedingung für das Erscheinen eines Elements verwendet werden, da es für die Dauer von erneut versucht, bis es gefunden wird. So kann ein await tab.select('body') als Indikator dafür verwendet werden, ob eine Seite geladen ist. Die find-Methode sucht nach Text, gibt aber nicht naiv das erste passende Element zurück, sondern gleicht Kandidaten anhand der ähnlichsten Textlänge ab (die kürzeste gewinnt). Dadurch liefern Suchvorgänge wie tab.find('accept all') den tatsächlichen Cookie-Button anstelle eines Skripts im Kopfbereich.

  • kann sich mit einer laufenden Chrome-Debug-Sitzung verbinden

  • beschreibendes __repr__ für Elemente, das das Element als HTML darstellt

  • Hilfsfunktion zum Konvertieren einer laufenden undetected_chromedriver.Chrome-Instanz in eine nodriver.Browser-Instanz und von dort aus fortzufahren

  • vollgepackt mit Helfern und Hilfsmethoden für die am häufigsten verwendeten und wichtigsten Operationen

Was ist neu

0.50.1 Umstellung auf Flat-Mode-Verbindung.

Teile wurden neu geschrieben, um im Protokoll Flat-Verbindungen zu verwenden. Warum? - Iframes werden in den meisten Operationen berücksichtigt. - Der Tab hat eine neue Methode: await tab.get_frames(), die überprüfbare Iframes zurückgibt. - find() berücksichtigt Iframes, sodass du sogar nach „verify you are human“ suchen und das Verifizierungskontrollkästchen in JS-Challenges anklicken kannst.

Da dies einiges an Umschreiben erforderte, teste bitte gründlich, insbesondere wenn du große Projekte ausführst.

tab.xpath(selector, timeout=2.5)

findet Knoten mithilfe des XPath-Selektors! siehe tab xpath in der API-Dokumentation

tab.cf_verify()

findet das Kontrollkästchen und klickt es erfolgreich dies funktioniert nur, wenn du NICHT im Expertenmodus bist. derzeit ist nur eingebautes Englisch verfügbar erfordert die Installation des Pakets opencv-python

tab.bypass_insecure_connection_warning()

Bequemlichkeitsmethode für die Warnung vor unsicheren Seiten, zum Beispiel wenn ein Zertifikat ungültig ist.

tab.open_external_debugger()

ermöglicht es dir, den Tab zu inspizieren, ohne deine Verbindung zu unterbrechen

tab.get_local_storage()

LocalStorage-Inhalt abrufen

tab.set_local_storage(dict)

LocalStorage-Inhalt festlegen

tab.add_handler(someEvent, callback)

Der Callback kann ein einzelnes Argument (event) oder 2 Argumente (event, tab) akzeptieren.

start(expert=True)

treibt einiges an Hacking für erfahrenere Benutzer. Es deaktiviert Websicherheit und Origin-Trials und stellt außerdem sicher, dass Shadow-Roots immer geöffnet sind. Dadurch wirst du allerdings besser erkennbar!

Installation

du benötigst Chrome (oder einen auf Chromium basierenden Browser), installiert vorzugsweise am Standardort auf dem Rechner, auf dem du dieses Paket verwendest.

Wenn du auf einer Headless-Maschine arbeitest, z. B. auf AWS oder in einer anderen Umgebung ohne Display, ist es am besten, ein Xvfb-Werkzeug zu verwenden, um einen Bildschirm zu emulieren. Alternativ kann dieses Paket im Headless-Modus verwendet werden.

Du kannst nodriver mit pip installieren

pip install nodriver

Zum Aktualisieren

pip install -U nodriver

Anwendungsbeispiele

Das Ziel dieses Projekts (genau wie bei undetected-chromedriver, vor langer Zeit) ist es, es kurz und einfach zu halten, damit du schnell einen Editor oder eine interaktive Sitzung öffnen, ein paar Zeilen eintippen oder einfügen und loslegen kannst.

einfach

import nodriver as uc

async def main():

    browser = await uc.start()
    page = await browser.get('https://www.nowsecure.nl')

    ... further code ...

if __name__ == '__main__':
    # since asyncio.run never worked (for me)
    uc.loop().run_until_complete(main())

Benutzerdefinierte Startoptionen

Ich lasse den Async-Boilerplate hier weg

from nodriver import *

browser = await start(
    headless=False,
    user_data_dir="/path/to/existing/profile",  # by specifying it, it won't be automatically cleaned up when finished
    browser_executable_path="/path/to/some/other/browser",
    browser_args=['--some-browser-arg=true', '--some-other-option'],
    lang="en-US"   # this could set iso-language-code in navigator, not recommended to change
)
tab = await browser.get('https://somewebsite.com')

Benutzerdefinierte Optionen mit dem Config-Objekt

Ich lasse den Async-Boilerplate hier weg

from nodriver import *

config = Config()
config.headless = False
config.user_data_dir="/path/to/existing/profile",  # by specifying it, it won't be automatically cleaned up when finished
config.browser_executable_path="/path/to/some/other/browser",
config.browser_args=['--some-browser-arg=true', '--some-other-option'],
config.lang="en-US"   # this could set iso-language-code in navigator, not recommended to change
)

ein kleiner Eindruck

import nodriver

async def main():

    browser = await nodriver.start()
    page = await browser.get('https://www.nowsecure.nl')

    await page.save_screenshot()
    await page.get_content()
    await page.scroll_down(150)
    elems = await page.select_all('*[src]')

    for elem in elems:
        await elem.flash()
Tool herunterladen