Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > .NET Languages
You last visited: Today at 19:07

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

Advertisement



[VB.NET] String aus Quelltext auslesen

Discussion on [VB.NET] String aus Quelltext auslesen within the .NET Languages forum part of the Coders Den category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Jul 2009
Posts: 45
Received Thanks: 12
[VB.NET] String aus Quelltext auslesen

Hallo zusammen,

ich mache gerade ein Programm was den Serverstatus eines Servers überprüfen soll. Nur hab ich jetzt das Problem, dass er z.B. den Text: "Offline" im Quellcode nicht finden kann, und mir dann als Text false wiedergibt. Um das zu vermeiden hab ich eine If-Anweisung angelegt, was überprüfen soll, das wenn quelle = false ist den Status Offline anzeigt, und wenn true, Online anzeigt.
Nur kann da was irgendwie nicht stimmen, denn hab das Gefühl, dass er den String: "Offline" im Quellcode gar nicht findet und dann false wiedergibt.

Hier ist der Code:
Code:
Dim quelle As String = Me.WebBrowser1.DocumentText.Contains("OFFLINE")
Label3.Text = quelle

        If quelle = False Then
            Label3.ForeColor = Color.Red
            Label3.Text = "OFFLINE"
            Timer1.Start()
        ElseIf quelle = True Then
            Label3.ForeColor = Color.Green
            Label3.Text = "ONLINE"
            Timer1.Start()
        End If
Kann mir jemand vielleicht weiterhelfen?

Danke im vorraus.

MfG
Harry_Fan8
Harry Fan8 is offline  
Old 06/27/2012, 18:08   #2


 
Xijezu's Avatar
 
elite*gold: 0
Join Date: May 2011
Posts: 5,086
Received Thanks: 3,472
Quote:
Originally Posted by Harry Fan8 View Post
Nur kann da was irgendwie nicht stimmen, denn hab das Gefühl, dass er den String: "Offline" im Quellcode gar nicht findet und dann false wiedergibt.
Denk' daran, das "Contains" die Groß- und Kleinschreibung berücksichtigt.

Code:
this.WebBrowser1.DocumentText.ToLower().Contains("offline")
wäre somit eine alternative.
Xijezu is offline  
Old 06/27/2012, 18:14   #3
 
elite*gold: 0
Join Date: Jul 2009
Posts: 45
Received Thanks: 12
Muss der, wenn er das Wort findet nicht eig. true wiedergeben? Denn wenn ich deine Methode benutze kommt das gleiche raus wie bei mir.
Harry Fan8 is offline  
Old 06/27/2012, 18:20   #4
 
Kraizy​'s Avatar
 
elite*gold: 0
The Black Market: 471/0/0
Join Date: Apr 2010
Posts: 9,696
Received Thanks: 1,811
Lass dir doch mal den Quelltext ausgeben, klatsch den in den Notepad rein und dann such mal mit STRG+F ob es da sowas wie "offline" gibt. Aber wenn es mit Contains() nicht klappt, dann ist es ja wohl auch nicht vorhanden..
Kraizy​ is offline  
Old 06/27/2012, 18:24   #5
 
elite*gold: 0
Join Date: Jul 2009
Posts: 45
Received Thanks: 12
Hmm.. naja, ist das unbedingt nötig? ^^
Denn im Quellcode erscheint auch Offline. Nur wenn er das überprüft kommt immer der Wert false raus statt true.

Hier ist die URL vom Server Status:


#edit: habs mal getestet, und hab dort den Status auf Online gesetzt, aber dennoch bleibt er beim Programm auf Offline. Weiß vllt. jemand weiter? :/

MfG
Harry Fan8 is offline  
Old 06/27/2012, 18:47   #6
 
elite*gold: 40
Join Date: Apr 2012
Posts: 673
Received Thanks: 83
Vergiss den Webbrowser, denn wenn du mit einem Webbrowser aufrufst wirst du ja automatisch zur Startseite weitergeleitet. Verwende daher lieber HttpWebRequest und dann per GetResponse den erhaltenen Quelltext nach online/offline checken.
tobindev is offline  
Old 06/27/2012, 18:52   #7
 
elite*gold: 0
Join Date: Jul 2009
Posts: 45
Received Thanks: 12
Ja, das liegt daran, dass man nicht registriert ist, man muss sich registrieren und dabei eingeloggt sein, um die Seite zu sehen.

Der Quelltext der Webseite sieht wie folgt aus:
Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html xmlns:IE>

<head>
<meta http-equiv="Expires" content="0">
<meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="Cache-Control" content="no-cache">
<meta name="MSSmartTagsPreventParsing" content="TRUE">
<title>06scape - Server Status</title>
<link href="../css/basic-3.css" rel="stylesheet" type="text/css" media="all">
<link href="http://www.06scape.com/img/favicon.ico" rel="shortcut icon">
<link href="http://www.06scape.com/css/main/title-5.css" rel="stylesheet" type="text/css" media="all">
<link href="http://www.06scape.com/css/kbase-2.css" rel="stylesheet" type="text/css" media="all" />
<style type="text/css">
.contentc { padding-bottom: 15px; text-align: center; float: left; width: 33.33333%; }
</style>
</head>

	<body style="background-image:url('http://www.06scape.com/img/backgrounds/bg-1.jpg');">
		<div id="body">
		<div class="frame e">
			<span style="float: right;">
			<a href="http://www.06scape.com/title.ws">Main Page</a> | <a href="http://www.06scape.com/logout.ws">Logout</a>
			</span>
			<div>You are logged in as <span style="color: rgb(255, 187, 34);">Harry Fan8</span>&nbsp;&nbsp;&nbsp;<span style="color: red;">Do NOT go to 2006scape.com</span>
			</div>
		   </div>		<br />
		<div style="text-align: center; background: none;">
				<div class="titleframe e">
					<b>Server Status</b><br><a href="http://www.06scape.com/title.ws">Main Menu</a><br />
				</div>
			</div>
        <br /><br />
		<div class="frame e" style="overflow:auto;"><br>
			<div style='text-align: center; width: 50%; margin: 0 auto;'>
				The server is currently: <br /><br />
				<span style='font-size: 15pt; color: red;'><b>OFFLINE</b></span><br />Note: This does not necessarily mean you will be able to log in.<br /><br />
			</div>
		</div>
		
		</div>
		</body>
	</html>
P.S.: Könntest du mir ein Beispiel nennen? Bin noch nicht so ein wirklicher Profi in VB.

MfG
Harry Fan8 is offline  
Old 06/27/2012, 19:42   #8
 
elite*gold: 40
Join Date: Apr 2012
Posts: 673
Received Thanks: 83
Hier findest du etwas zur Post-Method, die du für den Login benötigst:



Und hier zur Get-Method, um die Seite aufzurufen:



Aber mal abgesehen davon. So weit ich weiß kann folgendes doch nicht richtig funktionieren:

Code:
Dim [B][COLOR="Sienna"]quelle As String = Me.WebBrowser1.DocumentText.Contains("OFFLINE")[/COLOR][/B]
Label3.Text = quelle

        If [B][COLOR="Sienna"]quelle = False[/COLOR][/B] Then
            Label3.ForeColor = Color.Red
            Label3.Text = "OFFLINE"
            Timer1.Start()
        ElseIf [B][COLOR="Sienna"]quelle = True[/COLOR][/B] Then
            Label3.ForeColor = Color.Green
            Label3.Text = "ONLINE"
            Timer1.Start()
        End If
Mach es doch einfach so:

Code:
        If Me.WebBrowser1.DocumentText.ToLower.Contains("offline") Then
            Label3.ForeColor = Color.Red
            Label3.Text = "offline"
            Timer1.Start()
        Else
            Label3.ForeColor = Color.Green
            Label3.Text = "online"
            Timer1.Start()
        End If
Ein String kann doch nicht True oder False sein!?
tobindev is offline  
Old 06/27/2012, 21:54   #9
 
Kraizy​'s Avatar
 
elite*gold: 0
The Black Market: 471/0/0
Join Date: Apr 2010
Posts: 9,696
Received Thanks: 1,811
Mach mal Option Strict On dann würde sowas nicht passieren..
Kraizy​ is offline  
Reply


Similar Threads Similar Threads
[Visual Basic] [Problem] String auslesen/String zufällig wählen
05/06/2012 - General Coding - 4 Replies
Code: #include <GUIConstants.au3> #Region ### START Koda GUI section ### Form= $Form1 = GUICreate("Name Generator", 236, 299, 815, 246) $Input1 = GUICtrlCreateInput("Username", 24, 72, 185, 21) $Input2 = GUICtrlCreateInput("Username", 24, 104, 185, 21) $Input3 = GUICtrlCreateInput("Username", 24, 136, 185, 21) $Input4 = GUICtrlCreateInput("Username", 24, 168, 185, 21) $Input5 = GUICtrlCreateInput("Username", 24, 200, 185, 21)
Kreditkartendaten bei gebrauchten Konsolen der Xbox360 auslesbar?
03/31/2012 - User Submitted News - 0 Replies
Forscher der Drexel University wollen herausgefunden haben, dass ehemaliger Besitzer einer Xbox 360, die die Konsole an dritte weiterverkauft haben künftig um ihre angegebenen Daten zittern. Hacker soll es durch einfach Modding-Tools ein Kinderspiel sein von der Festplatte der gebrauchten Konsole Daten auszulesen, die eigentlich schon gelöscht waren, darunter auch Kreditkarteninformationen. Microsoft habe zwar vieles dafür getan, die eigenen Informationen zu schützen, sei beim Schutz der...
Quelltext stelle nicht auslesbar
09/02/2011 - AutoIt - 6 Replies
Hi, ich hab hier ein Problem mit dem Quelltext auslesen mit WebTcp und _stringbetween. $slprometium=_StringBetween($oWebTcp.body, 'id="prometiumCollector_skylabPendingRobots&q uot;>', '</td>') $slendurium=_StringBetween($oWebTcp.body, 'id="enduriumCollector_skylabPendingRobots&qu ot;>', '</td>') $slterbium=_StringBetween($oWebTcp.body, 'id="terbiumCollector_skylabPendingRobots&quo t;>', '</td>') Bei der Abfrage: if IsArray($slprometium and $slendurium and $slterbium) then msgbox(64,...
[VB08]String in String mit mehreren Funden
08/08/2011 - .NET Languages - 6 Replies
Hey, bin gerade auf ein Problem gestoßen, an dem ich mir seit 3 Stunden die Zähne ausbeiße. Ich will eine Funktion schreiben, die der _StringBetween Funktion von AutoIt gleich ist. _StringBetween gibt in einem Array alle Strings zwischen zwei SubStrings und dem ganzen String aus. Die Ausgabe bei _StringBetween("<h1>test1</h1>&l t;h1>test2</h1>", "<h1>", "</h1>") wäre also idealer Weiße ein Array (x = "test1", x = "test2")... da man in VB08 kein Array returnen kann, komme ich aber einfach...



All times are GMT +1. The time now is 19:08.


Powered by vBulletin®
Copyright ©2000 - 2026, 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 ©2026 elitepvpers All Rights Reserved.