Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > .NET Languages
You last visited: Today at 15:14

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Synchroner Webbrowser C#

Discussion on Synchroner Webbrowser C# within the .NET Languages forum part of the Coders Den category.

Reply
 
Old   #1
Moderator



 
stotterer09's Avatar
 
elite*gold: 26
Join Date: Dec 2010
Posts: 2,628
Received Thanks: 1,812
Synchroner Webbrowser C#

Hi, gibt es ne möglichkeit mit der System.Windows.Forms.WebBrowser Klasse synchron eine URL zu laden? Ich habe das ganze jetz einfach dirty gemacht:
Code:
 private WebBrowser wb;
        private bool isready;
        public SpotifyInformationAPI()
        {
            isready = false;
            wb = new WebBrowser();
            wb.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(loadingdone);
        }
        private void loadingdone(object sender, WebBrowserDocumentCompletedEventArgs e)
        {
            isready = true;
        }
        public String[] getInformation(String URL)
        {
            isready = false;
            String[] array = new String[2];
            wb.Navigate(URL);
            while (!isready)
            {
                Thread.Sleep(10);
                Application.DoEvents();
            }
            string[] sep = new string[] { ", a song by ", " on Spotify" };
            array = wb.DocumentTitle.Split(sep, StringSplitOptions.RemoveEmptyEntries);
            return array;
        }
Aber gibt es keinen anderen weg?

hoffe auf hilfe

LG
stotterer09 is offline  
Old 06/02/2015, 15:38   #2
 
tolio's Avatar
 
elite*gold: 2932
The Black Market: 169/1/0
Join Date: Oct 2009
Posts: 6,966
Received Thanks: 1,097
nein gibt es nicht, wenn möglich webrequests verwenden
tolio is offline  
Thanks
1 User
Old 06/02/2015, 19:00   #3


 
elite*gold: 1091
Join Date: Jun 2007
Posts: 19,836
Received Thanks: 7,180
Wieso bestehst du eigentlich unbedingt darauf, deinen Code synchron auszuführen?
Mostey is offline  
Old 06/02/2015, 19:39   #4
Moderator



 
stotterer09's Avatar
 
elite*gold: 26
Join Date: Dec 2010
Posts: 2,628
Received Thanks: 1,812
Quote:
Originally Posted by Mostey View Post
Wieso bestehst du eigentlich unbedingt darauf, deinen Code synchron auszuführen?
Ich möchte den Song Titel und den Interpreten aus einem spotify link herausfiltern:


Das mache ich über den Titel der Seite und den kann ich erst auslesen nachdem die seite aufgebaut ist


Aber ich werder wie tolio vorgeschlangen hat auf web request umsteigen wenn das möglich ist, habe sowas noch nie gemacht hoffe ich kriege das hin hat jemand ein gutes tutorial ? Danke im Vorraus

LG
stotterer09 is offline  
Old 06/02/2015, 20:17   #5


 
elite*gold: 1091
Join Date: Jun 2007
Posts: 19,836
Received Thanks: 7,180
Quote:
Originally Posted by stotterer09 View Post
Das mache ich über den Titel der Seite und den kann ich erst auslesen nachdem die seite aufgebaut ist



Quote:
Originally Posted by stotterer09 View Post
Aber ich werder wie tolio vorgeschlangen hat auf web request umsteigen wenn das möglich ist, habe sowas noch nie gemacht hoffe ich kriege das hin hat jemand ein gutes tutorial ? Danke im Vorraus

LG
Wäre sicherlich eine bessere und performantere Alternative. Dazu findest du sicher genug Informationen. Hier auf elitepvpers hatte auch jemand vor nicht all zu langer Zeit mal ein ausführliches Video gedreht, schau mal in der Tutorial Sektion.
Mostey is offline  
Old 06/02/2015, 20:27   #6
 
Kraizy​'s Avatar
 
elite*gold: 0
The Black Market: 471/0/0
Join Date: Apr 2010
Posts: 9,696
Received Thanks: 1,810
1. WebBrowser löschen, wiederherstellen, nochmal löschen. Schritt je nach Lust und Laune wiederholen
2. Einfach ein GET-Request an die Spotify URL senden, am einfachsten wäre es in deinem Fall natürlich einfach einen WebClient zu nutzen:

PHP Code:
Dim html As String = New Net.WebClient().DownloadString("https://open.spotify.com/track/3nzMupDBOvfUoSVutSxNaY"
Die Variable enthält nun den gesamten Seitenquelltext. Interpret, Songname usw kannst du nun einfach per Split / RegEx / HtmlAgilityPack (empfohlen) rausfiltern.

Falls du doch lieber HttpWebRequests benutzen willst, ich habe hier damals ein kleines Tutorial dazu geschrieben, kannst es dir ja mal durchlesen:
Kraizy​ is offline  
Thanks
1 User
Old 06/02/2015, 21:17   #7
 
YatoDev's Avatar
 
elite*gold: 50
Join Date: Sep 2012
Posts: 3,841
Received Thanks: 1,462
du kannst doch warten bis die seite fertig geladen hat

Code:
WB.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(webBrowser_DocumentCompleted);
            while (!PageLoaded)
            {
......

private void webBrowser_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
        {
            PageLoaded = true;
        }
......

WebBrowser.IsBusy
YatoDev is offline  
Old 06/02/2015, 22:25   #8
Moderator



 
stotterer09's Avatar
 
elite*gold: 26
Join Date: Dec 2010
Posts: 2,628
Received Thanks: 1,812
Quote:
Originally Posted by Mostey View Post





Wäre sicherlich eine bessere und performantere Alternative. Dazu findest du sicher genug Informationen. Hier auf elitepvpers hatte auch jemand vor nicht all zu langer Zeit mal ein ausführliches Video gedreht, schau mal in der Tutorial Sektion.
Wie es dir vll. aufgefallen ist benutz ich das ereignis schon



jo ich werde umsteigen danke

Quote:
Originally Posted by »FlutterShy™ View Post
du kannst doch warten bis die seite fertig geladen hat

Code:
WB.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(webBrowser_DocumentCompleted);
            while (!PageLoaded)
            {
......

private void webBrowser_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
        {
            PageLoaded = true;
        }
mach ich doch
stotterer09 is offline  
Old 06/02/2015, 23:06   #9
 
YatoDev's Avatar
 
elite*gold: 50
Join Date: Sep 2012
Posts: 3,841
Received Thanks: 1,462
Quote:
Originally Posted by stotterer09 View Post
mach ich doch
du hast nach anderen wegen gefragt und da ist einer.

PS: Hatte das Post edit noch offen und nicht abgeschickt hatte IsBusy erst vergessen
YatoDev is offline  
Old 06/03/2015, 06:38   #10
 
ლʕಠᴥಠʔლ's Avatar
 
elite*gold: 0
Join Date: Mar 2015
Posts: 118
Received Thanks: 23
Warum nicht den neueren HttpClient benutzen?
Du hast zwar kein ftp und download progress report, aber die kann man sich auch leicht selber bauen.
Vor allem ist HttpClient in DNXCore nicht deprecated.
ლʕಠᴥಠʔლ is offline  
Reply


Similar Threads Similar Threads
[VB-10] Webbrowser
11/08/2013 - .NET Languages - 8 Replies
Bräuchte mal hilf beim Webbrowser. Will so machen, dass wenn ich eine bestimmte Seite geöffnet habe, dass dann eine andere Form gestartet wird. Ich hab es ausprobiert und ich glaub ich hab es schon richtig aber kriege ganze Zeit Syntaxfehler.. Imports System.Net.WebRequestMethods Public Class Form2 Private Property http As Uri
VB.net webbrowser statt in IE in zweitem webbrowser laden :((
07/19/2013 - .NET Languages - 2 Replies
Hallo alle zusammen. Mein Webbrowser klickt auf einen button, und dieser öffnet eine neue seite, die im IE geöffnet wird. Doch statt sie im IE zu öffnen, soll er sie in einem zweitem webbrowser auf einer anderen form öffnen.. Das problem dabei ist, dass ich soweit ich weiß nicht einfach den link nehmen kann und mit webbrowser.navigate dorthin kann, weil ich dabei eingeloggt bleiben muss. Ich weiß dass das Thema schon oft behandelt wurde, sowohl hier als auch woanderas, aber diese ganzen...
Zero Webbrowser v1.0
06/01/2013 - elite*gold Trading - 2 Replies
hie könnt ihr meinen neuen Webbrowser Downloaden und testen hier sind mal 20 keys 82oY-f9KG-mT0h-XHbM-3DO5 kTCA-EZfV-S9S0-VI54-XPdg E08R-LuV9-AS3y-J809-yO7N NG8V-fBAR-1sIs-KRMF-5KV7 lXLd-HAHT-4pc-FFUz-207j T5R5-guaX-n1OE-2EJ9-8TO6 1kXV-ouhf-N8a5-T01-MICV
[Webbrowser] In Do Loop warten bis Webbrowser fertig geladen hat
02/21/2013 - .NET Languages - 3 Replies
Ich hab hier folgenden Code: With New StreamReader(path) Do While WebBrowser1.ReadyState <> WebBrowserReadyState.Complete End While Dim question As String = .ReadLine RichTextBox1.Text = question WebBrowser1.Document.GetElementById("profile- input").SetAttribute("value", question)
c++ webbrowser
10/17/2010 - C/C++ - 17 Replies
hey hab ne frage zu c++ mit vc++ 2008 ich hab n kleinen browser erstellt. also wenn ich z.B. durch meinen browser auf google.de bin will ich , dass automatisch in das suchweld eingegeben wird was ich verlange und danach soll auf den button suchen geklickt werden. bei fragen betzüglich meiner fragestellung einfach posten. beim googeln bin ich oft auf GUI gestoßen. hat das was damit zu tun?



All times are GMT +2. The time now is 15:14.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2024 elitepvpers All Rights Reserved.