2016-06-28 10 views
-2

Mit Delphi XE4 mit einem TWebBrowser Komponente verboten, die folgende Zeile ...Fehler 1010: Der Inhaber dieser Website Ihren Zugang

WebBrowser1.Navigate('http://www.voobly.com'); 

... erzeugt das folgende Fehlerergebnis innerhalb des TWebBrowser angezeigt:

 
Error 1010 Ray ID: 2ba30d99731123a8 • 2016-06-28 18:03:01 UTC 
Access denied 
What happened? 
The owner of this website (www.voobly.com) has banned your access based on your browser's signature (2ba30d99731123a8-ua98). 
CloudFlare Ray ID: 2ba30d99731123a8 • Your IP: x.x.x.x • Performance & security by CloudFlare 

Mein Useragent-String ist:

Mozilla/5.0 (compatible, MSIE 11, Windows NT 6.3; Trident/7.0; rv:11.0) like Gecko 

Was kann ich Zugang zu solchen Websites zu gewinnen tun, um mit dem TWebBrowser?

+1

Vielleicht möchten sie nicht, dass Webcrawler Bilder von ihrer Website holen. Schließlich können Sie auch nicht mit der rechten Maustaste auf die Bilder klicken. Ich bin sicher, es ist aus rechtlichen Gründen. –

+0

Ich versuche nicht, jemandes Website zu crawlen. Dutzende von Websites geben den gleichen CloudFlare-induzierten Fehler/Antwort zurück, auch wenn es nichts gibt, was "Crawlen" wert wäre. – instrumentally

+0

Siehe [Warum erhalten einige Besucher die Fehlermeldung "Sie wurden blockiert?" (Https://support.cloudflare.com/hc/en-us/articles/203215830-Why-do-some-visitors-get- a-Sie-wurden-blockiert-Fehlermeldung-). Grundsätzlich löst Ihr Browser die CloudFlare-Firewall aus ("* Durch das Blockieren eines Angriffs wird jegliche Aktion gestoppt, bevor sie auf Ihrer Website veröffentlicht wird. ** Es kann auch legitimen Datenverkehr stoppen, wenn der Regelsatz zu weit gefasst ist **. *"). Wenden Sie sich an den Websitebesitzer, um herauszufinden, welche Firewall-Regel ausgelöst wird. Vielleicht können Sie Ihren Code anpassen, um ihn zu umgehen. –

Antwort

-1

Ich habe herausgefunden, was das Problem war. Problem war beim Einstellen des UserAgents. Ich hatte ursprünglich geliehen und wurde mit dem folgenden Verfahren aus einer früheren Frage Stackoverflow (siehe Authentification on HTTP proxy in Delphi XE)

Verfahren verwendet, um die Useragent in diesem Artikel/Frage gesetzt war:

UrlMkSetSessionOption(URLMON_OPTION_USERAGENT, PChar(UserAgent), Length(UserAgent)+1, 0); 

Es stellt sich jedoch heraus, dass Das ist falsch. Die Länge (UserAgent) +1 ist das Problem. Stattdessen sollte der Code-Parameter lauten: Length (UserAgent)

Wenn ich diese Änderung vorgenommen habe, konnte ich problemlos auf voobly.com zugreifen.

+2

Dies hat keinerlei Bezug zu der von Ihnen gestellten Frage. Sie hatten einen Fehler im Code, den Sie nicht angezeigt haben. Deshalb sollten Sie immer ein [mcve] posten. Am besten ist es, die Frage zu löschen, dass zukünftige Besucher keinen Wert haben. –

Verwandte Themen