VBS Frage

Seite 1 von 1 - Forum: Coding Stuff auf overclockers.at

URL: https://www.overclockers.at/coding-stuff/vbs_frage_88801/page_1 - zur Vollversion wechseln!


schrieb am 10.08.2003 um 14:55

Howdy,

Folgendes Problem... ich bin ein absoluter Coding-newbie und würde gern mit einem VBS-Script via Samurize das Wetter vom orf auf meinen Desktop schicken lassen.

Ich hab mir jetzt aus verschiedenen scripts eines zusammengebastelt, hab aber noch ein letztes Problem damit. Ich hab schon stunden dran herumgespielt, habs aber nicht geschafft. :(

Los gehts:

Mit eine Function names TextGet sollte eigentlich dafür zuständig sein, die Temperatur aus dem Quelltext der ORF Page herauszufiltern. Das ganze sähe so aus:

Code:
GetText ("[COLOR=green]quellcode vor dem gewünschten wert"[/COLOR], "[COLOR=crimson]quellcode nach dem gewünschten wert[/COLOR]", 0)

Das funktioniert sogar - allerdings nur so lange der quellcode vor/nach dem Wert keine anführungszeichen enthält... ansonsten kommt VBS natürlich total aus dem tritt.

Ein vereinfachtes Bespiel:

Der Quelltext ist:

Code:
[COLOR=green]<td width=130 nowrap><font face="Verdana, Arial, Helvetica, sans-serif" size=-2 color=#FFFFFF><b>[/COLOR][COLOR=blue]30.7[/COLOR][COLOR=crimson]</b></font></td>[/COLOR]

Grün makiert ist hier also der code, der vor dem Wert steht, Blau ist der Wert selbst, der ausgegeben werden soll und Rot der code, der nach dem Wert steht.

Code:
Function Temperature
Temperatur = GetText ("[COLOR=green]<td width=130 nowrap><font face="Verdana, Arial, Helvetica, sans-serif" size=-2 color=#FFFFFF><b>[/COLOR]", "[COLOR=crimson]</b></font></td>[/COLOR]", 0)
end function

Tjo, das dumme VBS überreisst aber nicht, dass das zweite Anführungszeichen im Code (nach face=) nicht den "Anfangsteil" abschliesst, sondern teil des quellcodes ist.

Drum sieht das alles so aus - und das script funktioniert natürlich nicht.

Code:
Function Temperature
Temperatur = GetText ("[COLOR=green]<td width=130 nowrap><font face=[/COLOR]"Verdana, Arial, Helvetica, sans-serif" size=-2 color=#FFFFFF><b>", "[COLOR=crimson]</b></font></td>[/COLOR]", 0)
end function

Wie bring ich das Script also dazu, die Quotes innerhalb des Quellcodes zu ignorieren?

Ich hab das alles sicher extremst kompliziert hergeschrieben, aber als Newbie wüsste ich nicht, wie ich das einfacher erklären könnte. Im Grunde will ich also nur die Tags "verschachteln". Ich habe schon versucht, die "inneren" quotes gegen &qu0t; (0=o) auszutauschen - dann wurde aber der text nichtmehr erkannt.

Für jede Hilfe wär ich extremst dankbar. :)


orpheus schrieb am 10.08.2003 um 15:15

keine ahnung ob das funzt :D aber probier das mal:

Temperatur = GetText ("<td width=\"130\" nowrap><font face=\"Verdana, Arial, Helvetica, sans-serif\" size=\"-2\" color=\"#FFFFFF\"><b>", "</b></font></td>", 0)

hth


schrieb am 10.08.2003 um 15:24

w00t, danke. Werd ich gleich ausprobieren. :)

//edit: ging leider auch nicht - VBS schliesst noch immer nach den quotes ab. hmm, ich werd mir noch einige andere wetterscripts ansehen, wie die das gelöst haben. evtl. kann ich irgendwie die quotes aus dem html file herausfiltern, bevor GetText sie absucht...

btw, hier ist das script - evtl. findet jemand einen fehler o.ä. :)

click here


atrox schrieb am 11.08.2003 um 17:10

wird in vb nicht das doppelte anführungszeichen durch verdopplung escaped ?

sometext = "das sind ""doppelte anführungszeichen"" "

oder auch

sometext = "das sind " & chr(34) & "doppelte anführungszeichen" & chr(34)


irreversible schrieb am 12.08.2003 um 10:30

in vb funktionierts meines wissens auch mit doppelten hochkommas wie atrox gesagt hat ... obs in vbs auch so geht weiß ich nicht, nehm ich aber an




overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2026