In der Hoffnung, dass ein Experte mir mit einem Selenium/Cloudflare -Rätsel helfen kann. Ich kann eine Website zum Laden in normales (nicht headloses) Selen laden, aber egal was ich versuche, ich kann es nicht zum Kopflosen laden. < /P>
Ich habe den Vorschlägen befolgt Aus den Stackoverflow -Posts wie gibt es eine Version von Selenium WebDriver, die nicht nachweisbar ist? Ich habe auch alle Eigenschaften von Fenster und window.navigator Objekte angesehen und alle Diffs zwischen kopflos und nicht headlos behoben, aber irgendwie wird immer noch kopflos erkannt. Zu diesem Zeitpunkt bin ich extrem neugierig, wie Cloudflare den Unterschied herausfinden könnte. Vielen Dank für die Zeit! Benutzer-Agent
[*] Ersetzen Sie CDC _ durch eine andere Zeichenfolge in Chromedriver
[*]
(Dies war erforderlich, damit die Website nicht headlos geladen werden kann)
[*] Setzen Sie Navigator.webdriver = undefined
[*] Setzen Sie Navigator.plugins , navigator.languages und navigator.mimetypes
[*] Setzen Sie Window.screeny , window.screentop , window.outerwidth , window.outerHeight ungleicher
[*] Fenster einstellen.
[*] Setzen Sie die Breite und die Höhe der Bilder, die ungleich Null sind. >
Replikation des Experiments
, damit die Website eingeladen wird Normales (nicht headloses) Selen, Sie müssen einem _blank Link von einer anderen Website folgen (damit die Zielwebsite auf einer anderen Registerkarte geöffnet wird). Um das Experiment zu replizieren, erstellen Sie zuerst eine HTML -Datei mit dem Inhalt Link und fügen Sie dann den Pfad zu diesem HTML ein Datei im folgenden Code. auf CloudFlare. < /p>
In der Hoffnung, dass ein Experte mir mit einem Selenium/Cloudflare -Rätsel helfen kann. Ich kann eine Website zum Laden in normales (nicht headloses) Selen laden, aber egal was ich versuche, ich kann es nicht zum Kopflosen laden. < /P> Ich habe den Vorschlägen befolgt Aus den Stackoverflow -Posts wie gibt es eine Version von Selenium WebDriver, die nicht nachweisbar ist? Ich habe auch alle Eigenschaften von Fenster und window.navigator Objekte angesehen und alle Diffs zwischen kopflos und nicht headlos behoben, aber irgendwie wird immer noch kopflos erkannt. Zu diesem Zeitpunkt bin ich extrem neugierig, wie Cloudflare den Unterschied herausfinden könnte. Vielen Dank für die Zeit! Benutzer-Agent [*] Ersetzen Sie CDC _ durch eine andere Zeichenfolge in Chromedriver [*][code]options.add_experimental_option("excludeSwitches", ["enable-automation"])[/code] [*][code]options.add_experimental_option('useAutomationExtension', False)[/code] [*][code]options.add_argument('--disable-blink-features=AutomationControlled')[/code] (Dies war erforderlich, damit die Website nicht headlos geladen werden kann) [*] Setzen Sie Navigator.webdriver = undefined [*] Setzen Sie Navigator.plugins , navigator.languages und navigator.mimetypes [*] Setzen Sie Window.screeny , window.screentop , window.outerwidth , window.outerHeight ungleicher [*] Fenster einstellen. [*] Setzen Sie die Breite und die Höhe der Bilder, die ungleich Null sind. >
[b] Replikation des Experiments [/b] , damit die Website eingeladen wird Normales (nicht headloses) Selen, Sie müssen einem _blank Link von einer anderen Website folgen (damit die Zielwebsite auf einer anderen Registerkarte geöffnet wird). Um das Experiment zu replizieren, erstellen Sie zuerst eine HTML -Datei mit dem Inhalt Link und fügen Sie dann den Pfad zu diesem HTML ein Datei im folgenden Code. auf CloudFlare. < /p> [code]from selenium import webdriver import time
# Replace this with the path to your html file FULL_PATH_TO_HTML_FILE = 'file:///Users/simplepineapple/html/url_page.html'
# Switch webdriver focus to new tab so that we can extract html tab_names = browser.window_handles if len(tab_names) > 1: browser.switch_to.window(tab_names[1])
time.sleep(1) html = browser.page_source print(html) print() print()
if 'Charts' in html: print('Success') else: print('Fail')
time.sleep(10)
options = webdriver.ChromeOptions() # If options.headless = True, the website will not load options.headless = False options.add_argument("--window-size=1920,1080") options.add_experimental_option("excludeSwitches", ["enable-automation"]) options.add_experimental_option('useAutomationExtension', False) options.add_argument('--disable-blink-features=AutomationControlled') options.add_argument('user-agent=Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.93 Safari/537.36')
Ich führe ein Selenium -Python -Skript aus, das YouTube im kopflosen Modus öffnet, 5 Sekunden wartet und dann beendet.
Das Skript funktioniert perfekt auf meiner lokalen Maschine. Wenn ich es jedoch...
Ich verwende Selenium mit Kopfloses Chrom, um Login und Scraping bei Amazon zu automatisieren, aber ich werde ständig auf eine Captcha-Seite wie diese umgeleitet: siehe Screenshot. /> Randomisierte...
Ich habe eine Python -Sript, um eine AJAX -Seite zu erhalten, URL: , mit Selenium in Chrome. Ich folgte der vorgeschlagenen Syntax, bekam aber immer noch nichts. Meine Selenium -Version ist v4.32.0 ,...
Ich versuche, ein Web -Scraping -Skript zu schreiben, um eine E -Mail -Adresse automatisch zu erstellen, ohne es manuell tun zu müssen. Da ich einige Kenntnisse über Web -Scraping habe, dachte ich,...
Ich versuche, ein Web -Scraping -Skript zu schreiben, um eine E -Mail -Adresse automatisch zu erstellen, ohne es manuell tun zu müssen. Da ich einige Kenntnisse über Web -Scraping habe, dachte ich,...