charmeur
Goto Top

Prüfen auf bestimmtes wort auf webseite

Hallo ihr
ich habe da eine frage
ist es möglich mit hilfe eines scriptes zu prüfen ob auf eine webseite ein bestimmtes wort zu finden ist
wenn ja sollte eine msgbox mit "ja" erscheinen, und wenn nicht eine msgbox mit "nein"

für eure hilfe wäre ich dankbar

Content-Key: 173427

Url: https://administrator.de/contentid/173427

Printed on: April 23, 2024 at 08:04 o'clock

Member: Biber
Biber Sep 20, 2011 at 18:48:49 (UTC)
Goto Top
Moin charmeur,

Zitat von @charmeur:
...ob auf eine webseite ein bestimmtes wort zu finden ist
wenn ja sollte eine msgbox mit "ja" erscheinen, und wenn nicht eine msgbox mit "nein"
Ist das echt der ganze Plan???

Du kennst noch diese altmodischen Metalldetektorschleusen aus der Pre-Nacktscanner-Zeit am Flughafen?
Da macht es immer *tröööööt*, wenn da jemand mit Zahnspange, Feuerzeug oder Keuschheitsgürtel durchrennt.

Und das *tröööööt* entspricht in etwa dem Detaillierungsgrad deiner angezeigten Information.
Ausser, dass du auch einen Mausklick machen musst, wenn einer ohne *tröööööt* durchrennt.

Geht es um eine Wette?

Grüße
Biber
Member: charmeur
charmeur Sep 20, 2011 at 19:00:02 (UTC)
Goto Top
Hallo
also es geht eigentlich nur da drum das ich prüfen kann ob mein netzwerkdrucker online ist, das geht
denke ich am besten über die seite des druckerservers der mir zeigt ob der drucker bereit ist oder nicht
also wenn der drucker an ist steht dann Canon.... und wenn erben nicht steht da nichts.
das hat den vorteil das ich das aufrufen lassen kann ohne eine webseite aufzurufen da ich auf dieser seite noch einige einstellung vornehmen kann die nicht unbedingt jeder verstellen sollte.
sicher für pc profis macht das keinen sinn da man ja nur die ip eingeben muss und schwubs ist man beim druckerserver
aber ihr könnt mir glauben das es menschen auf dieser erde geben soll die selbst das nicht unbedigt können
und wenn sie per zfall doch auf den server klicken sämtliche einstellungen verändern tun
also handelt es sich hierbei nicht unbedingt um eine wette viel mehr um ein hilferuf

Grüße
charmi
Member: bastla
bastla Sep 20, 2011, updated at Oct 18, 2012 at 16:48:26 (UTC)
Goto Top
Hallo charmeur!

Als VBS etwa so:
Adresse = "[content:173427#699549]"  
Wort = "Canon"  

On Error Resume Next
Set Http = CreateObject("WinHttp.WinHttpRequest.5.1")  
Http.Open "GET", Adresse, False  
Http.Send
Quelltext = Http.ResponseText

If InStr(Quelltext, Wort) > 0 Then
    WScript.Echo "ja"  
Else
    WScript.Echo "nein"  
End If
Bei Bedarf lässt sich das auch in einen Batch einbetten ...

Grüße
bastla
Member: Biber
Biber Sep 20, 2011 at 19:31:48 (UTC)
Goto Top
[OT] @bastla & charmeur

Zitat von @bastla:
Bei Bedarf lässt sich das auch in einen Batch einbetten ...

...der dann zum Beispiel eine Rundmail per Blat.exe versenden könnte mit dem Text
"Ihr gewünschter Netzdruckdrucker "Canon" ist zur Zeit leider nicht verfügbar. Bitte versuchen Sie es zu einem späteren Zeitpunkt."

Ich denke, es sind einige Jahre Lernzeit für so souveräne Lösungen erforderlich.
Das Finden von dazu passenden Problemen fällt dagegen einigen einfach so in den Schoss.

Grüße
Biber
[/OT]
Member: bastla
bastla Sep 20, 2011 at 19:36:39 (UTC)
Goto Top
[OT] @Biber
eine Rundmail per Blat.exe versenden
Ich wusste doch, dass ich noch etwas vergessen hatte ... face-wink

Grüße
bastla
[/OT]
Member: charmeur
charmeur Sep 20, 2011 at 19:53:31 (UTC)
Goto Top
hallo erst einmal vielen lieben dank für deine hilfe
aber leider bekomme ich immer die rückmeldung nein hier habe ich mal den code den ich verwendet habe

Adresse = "http://admin:1234@192.168.100.40/printersta.asp"  
Wort = "Current"  

On Error Resume Next
Set Http = CreateObject("WinHttp.WinHttpRequest.5.1")  
Http.Open "GET", Adresse, False  
Http.Send
Quelltext = Http.ResponseText

If InStr(Quelltext, Wort) > 0 Then
    WScript.Echo "ja"  
Else
    WScript.Echo "nein"  
End If


was mache ich falsch?

Grüße

charmi
Member: bastla
bastla Sep 20, 2011 at 19:59:25 (UTC)
Goto Top
Hallo charmeur!

Du kannst durch
WScript.Echo Quelltext
als (zusätzliche) Zeile 9 anzeigen, was gelesen (und in weiterer Folge nach dem Wort "Current" - Achtung: Groß-/Kleinschreibung beachten - durchsucht) wird ...

Grüße
bastla
Member: charmeur
charmeur Sep 20, 2011 at 20:47:30 (UTC)
Goto Top
vielen dank
also so wie es aussieht übernimmt das script die Userkennung bzw. das passwort nicht
auf einer normalen testseite geht es


grüße
charmi
Mitglied: 60730
60730 Sep 22, 2011 at 20:00:16 (UTC)
Goto Top
Moin,

Zitat von @charmeur:
vielen dank
also so wie es aussieht übernimmt das script die Userkennung bzw. das passwort nicht auf einer normalen testseite geht es

An deiner Stelle würde ich wget und dem Schalterpärchen --http-user --http-password eine Chance geben.

Gruß
Member: charmeur
charmeur Sep 22, 2011 at 21:32:19 (UTC)
Goto Top
vielen lieben dank
aber leider bin ich nicht in der lage
diese operatoren "-http-user --http-password " in das obrige script zu integrieren
könntst du mir bitte eine lösung zeigen?


besten dank

charmi
Member: bastla
bastla Sep 23, 2011 at 14:55:00 (UTC)
Goto Top
Hallo charmeur!

Falls ich auch dürfte:
Adresse = "http://192.168.100.40/printersta.asp"   
Wort = "Current"  

Set Sh = CreateObject("WScript.Shell")  
QuellText = Sh.ExpandEnvironmentStrings("%temp%" & "\Quelltext.txt")  

Sh.Run "C:\Utils\wget --http-user=admin --http-password=1234 --output-document=" & QuellText & " " & Adresse, 0, True  

Set fso = CreateObject("Scripting.FileSystemObject")  
If fso.FileExists(QuellText) Then 
    If InStr(fso.OpenTextFile(QuellText).ReadAll, Wort) > 0 Then
        WScript.Echo "ja"  
    Else
        WScript.Echo "nein"  
    End If
    fso.DeleteFile(QuellText)
Else
    WScript.Echo "Keine Info erhalten!"  
End If
Anzupassen wäre noch der Pfad zur "wget.exe" (im Beispiel: "C:\Utils") ...

Grüße
bastla
Member: charmeur
charmeur Sep 25, 2011 at 17:32:48 (UTC)
Goto Top
super vielen dank das ganze hat natürlich funktioniert
danke
danke
danke


eine frage gibt es die möglichkeit mit wget auch etwas zu doenloaden


Grüsse
charmi
Member: bastla
bastla Sep 25, 2011 at 17:43:05 (UTC)
Goto Top
Hallo charmeur!
gibt es die möglichkeit mit wget auch etwas zu doenloaden
Bevor Du daran arbeitest, diese Frage zu konkretisieren: http://www.gnu.org/software/wget/manual/ bzw
wget --help
Grüße
bastla
Member: Biber
Biber Sep 25, 2011 at 18:00:47 (UTC)
Goto Top
[OT] @bastla
Zitat von @bastla:
Hallo charmeur!
> gibt es die möglichkeit mit wget auch etwas zu doenloaden
Bevor Du daran arbeitest, diese Frage zu konkretisieren: http://www.gnu.org/software/wget/manual/ bzw
Schade. bastla, ich hätte auch gern eine herzliche Antwort geschrieben... aber ich musste erst abwarten, bis Werder endlich den Sack zu macht.
Und die haben es sich aufgehoben bis in die Nachspielzeit... nix für meine Nerven...

@charmeur
T-Mo weist in solchen Fällen immer gern auf das FIFO-Prinzip hin (Forest-In-Forest-Out).
In deinem Fall würde ich es mal so sagen:
Auf derartige Charmeur-Fragen könnten unter Umständen Uncharmeur-Antworten kommen. face-wink

Grüße
Biber
[/OT]
Member: charmeur
charmeur Sep 25, 2011 at 18:28:22 (UTC)
Goto Top
öhm?
also bevor hier missverständnisse auftauchen
ich würde gerne prüfen lassen (wie im script) ob die datei wget vorhanden ist wenn
nein soll eben eine msgbox mit der auswahl download Ja/Nein kommen
und wenn ja geklickt wird soll eben die datei geladen werden

grüsse charmi
Member: Biber
Biber Sep 25, 2011 at 18:57:21 (UTC)
Goto Top
Moin charmeur,

Zitat von @charmeur:
öhm?
also bevor hier missverständnisse auftauchen
ich würde gerne prüfen lassen (wie im script) ob die datei wget vorhanden ist wenn
nein soll eben eine msgbox mit der auswahl download Ja/Nein kommen
und wenn ja geklickt wird soll eben die datei geladen werden
öhhhmm.... nochmal,,,
Falls die wget.exe nicht vorhanden sein sollte, dann soll sie, falls es dem DAU/der DAUin beliebt, mit wget heruntergeladen werden??

Darf ich darauf morgen früh antworten?
Grüße
Biber
Member: charmeur
charmeur Sep 25, 2011 at 19:09:45 (UTC)
Goto Top
ja genau aber nur nach ausdrücklichen bestätigung das sie geladen werden soll


grüsse
charmi
Member: bastla
bastla Sep 25, 2011 at 19:22:40 (UTC)
Goto Top
Hallo charmeur!

Darf ich für Dich Bibers Frage noch etwas kürzer fassen:

Du möchtest, dass "wget.exe", wenn sie nicht vorhanden ist, mit "wget.exe" heruntergeladen wird? face-wink
Sollte es aber hier ev ein Missverständnis der Art geben, dass "wget.exe" einfach nur über eine Freigabe im Netzwerk abzuholen wäre, würde es sich vielleicht anbieten, den von mir oben vorgeschlagenen Pfad "C:\Utils" ein wenig globaler (oder zumindest weniger lokal) zu interpretieren ...

Grüße
bastla
Member: charmeur
charmeur Sep 25, 2011 at 19:46:20 (UTC)
Goto Top
nein also wenn die datei nicht vorhanden ist sollte sie von der webseite des anbieters herunter geladen werden.
nach genaueren überlegung geht es nur so wie ich es habe, ich wollte eigentlich das nicht der browser gestartet wird sobald
der download beginnt aber das würde ja nur mit wget.exe gehen also geht es nur über den browser.


für deine mühe danke ich dir
und ich finde es klasse das es so menschen gibt wie dich, die jemanden wie mir helfen und ihr wissen teilen


Besten dank

charmi
Member: MaikHSW
MaikHSW Sep 26, 2011 at 17:02:19 (UTC)
Goto Top
Hey.
Handelt es sich nur um einen Drucker?
Ansonsten sollten Drucker ja auch über Nagios zu monitoren und zu pingen sein, oder?

Und was möchtest du nun genau mit wget bewirken?
Ich meine klar, Downloads starten. Aber von was?

Ich persönlich bekomme immer Bauchweh wenn sich Leute, die sich vermutlich in der Realität Administrator nennen, alle möglichen Lösungen und komplexen Skripte im Web beschaffen und einsetzen, diese aber meist nicht verstehen.
Es ist okay, wenn man sich mal Anreize oder den ein oder anderen Hinweis holt.
Aber direkt eine Komplettlösung?
Zumal mir nach wie vor nicht klar ist was du erreichen willst.


Gruß
Member: charmeur
charmeur Sep 26, 2011 at 17:51:00 (UTC)
Goto Top
Zitat von @MaikHSW:
Hey.
Handelt es sich nur um einen Drucker?

-->ja um einen canon mp830

Ansonsten sollten Drucker ja auch über Nagios zu monitoren und zu pingen sein, oder?

-->ja eigentlich schon


Und was möchtest du nun genau mit wget bewirken?

-> den Drucker prüfe ich über die html seiten des servers, ob er AN ist oder nicht dies geht aber nicht wirklich da diese seite mit benutzer und passwort deswegen benötige ich dieses programm wget

Ich meine klar, Downloads starten. Aber von was?

--> der download soll nach gefragt werden immer wenn die datei wget nicht vorhanden ist

Ich persönlich bekomme immer Bauchweh wenn sich Leute, die sich vermutlich in der Realität Administrator nennen, alle
möglichen Lösungen und komplexen Skripte im Web beschaffen und einsetzen, diese aber meist nicht verstehen.
Es ist okay, wenn man sich mal Anreize oder den ein oder anderen Hinweis holt.
Aber direkt eine Komplettlösung?
Zumal mir nach wie vor nicht klar ist was du erreichen willst.


Gruß

also
zunächst mal wie man schon bei meinen beiträgen bemerken müsste, bin ich sicher nirgends andministrator,
da ich eher null plan von scriptsprache bzw. nicht wirklich was vom pc verstehe viel mehr muss ich bei jedem beitrag
den ich hier starte sämtliche wörter bzw. programme nachgoogeln
da ich hier alles nur für mein netzwerk (familie + ich) benötige frage ich zum teil auch nach komplettlösungen da ich wenn ihr mir hinweise geben tut, bin ich nicht wirklich in der lage diese in ein script unterzubringen.
mir ist bewusst das dies nicht wirklich hier gut ankommt
aber ich kann es leider nicht und deswegen frage ich eben


grüsse charmi
Member: MaikHSW
MaikHSW Sep 26, 2011 at 18:17:24 (UTC)
Goto Top
Hallo charmi.
Das gibt dem ganzen nun eine ganz andere Dimension.
Dann will ich nichts gesagt haben.

Aber warum kann innerhalb der Familie nicht einfach nachgeguckt werden ob der Drucker an ist?
Nagions wäre da absolut überzogen, theoretisch würde aber ein einfach geskripteter Ping reichen.
Ich komme gerade nicht darauf, wie man Pings auswerten kann.
Aber im Prinzip musst du doch nur gucken ob von 3 Pings mind. 2 oder sogar alle zurück kommen.

Damit könntest du dir nämlich dann das ganze Getrickse mit wget und so sparen.
Das halte ich zwar für ein nettes Spielzeug in diesem Zusammenhang, aber einen reinen On/Off Test kann man durchaus mit einem einfachen Ping realisieren.
Quasi einfach Keep it simple.


Gruß
Member: charmeur
charmeur Sep 26, 2011 at 18:41:40 (UTC)
Goto Top
Zitat von @MaikHSW:
Hallo charmi.
Das gibt dem ganzen nun eine ganz andere Dimension.
Dann will ich nichts gesagt haben.

Aber warum kann innerhalb der Familie nicht einfach nachgeguckt werden ob der Drucker an ist?
Nagions wäre da absolut überzogen, theoretisch würde aber ein einfach geskripteter Ping reichen.
Ich komme gerade nicht darauf, wie man Pings auswerten kann.
Aber im Prinzip musst du doch nur gucken ob von 3 Pings mind. 2 oder sogar alle zurück kommen.

Damit könntest du dir nämlich dann das ganze Getrickse mit wget und so sparen.
Das halte ich zwar für ein nettes Spielzeug in diesem Zusammenhang, aber einen reinen On/Off Test kann man durchaus mit einem
einfachen Ping realisieren.
Quasi einfach Keep it simple.


Gruß

das ist schnell gesagt, ein kollege hat mir irgend wie ein "netzwerk" eingerichtet über vpn .. frag mich aber nicht wie
d.h. meine familie wohnt nicht bei mir der drucker dient quasi als fmilien drucker für z.b fotos die man zeigen möcht
also wenn es mit nem ping gehen würde dann reicht mir das auch aus.


grüsse
charmi
Member: bastla
bastla Sep 26, 2011 at 18:42:11 (UTC)
Goto Top
@maihsw
Ich komme gerade nicht darauf, wie man Pings auswerten kann.
Wenn ich etwas nachhelfen dürfte: Je nach verwendetem OS sollte
ping %Adresse%>nul || echo nicht erreichbar
oder zB
ping %Adresse%|findstr "TTL" || echo nicht erreichbar
oder meinetwegen
for /f %%i in ('ping %Adresse%|find /c "TTL"') do set /a Antw=%%i  
echo %Antw% Antworten erhalten
funktionieren ...

... und der Ordnung halber (es ging ja eigentlich die ganze Zeit um VBS): http://blogs.technet.com/b/heyscriptingguy/archive/2004/09/14/why-doesn ... (und zB "TTL" anstelle von "Reply") oder http://blogs.technet.com/b/heyscriptingguy/archive/2006/08/17/how-can-i ...

Grüße
bastla
Member: MaikHSW
MaikHSW Sep 26, 2011 at 20:55:14 (UTC)
Goto Top
Hey.
@ charmeur
Wie deine Familie wohnt nicht bei dir?
Wo steht denn dann der Drucker?
Denn da muss man ja schon lokal dran kommen, sonst liegen die Bilder da sehr alleine face-smile
Ein VPN Netzwerk sollte sich im Normalfall aber vollkommen transparent verhalen, sprich auch da sollte ein ping problemlos laufen.
Aber Versuch macht klug.
Halte ich auf jeden Fall für den besseren und effektiveren Weg als mit wget so einen Aufwand zu betreiben.

@ bastla
Einfach und doch super effizient, danke.


Gruß
Member: charmeur
charmeur Sep 27, 2011 at 16:04:14 (UTC)
Goto Top
Zitat von @MaikHSW:
Hey.
@ charmeur
Wie deine Familie wohnt nicht bei dir?
lach jepp die wohnt wo anderst

Wo steht denn dann der Drucker?
der drucker steht bei mir via drucker server können die anderen etwas drucken

Denn da muss man ja schon lokal dran kommen, sonst liegen die Bilder da sehr alleine face-smile
lach jetzt weiss ich was ich falsch mache

Ein VPN Netzwerk sollte sich im Normalfall aber vollkommen transparent verhalen, sprich auch da sollte ein ping problemlos
laufen.
Aber Versuch macht klug.
Halte ich auf jeden Fall für den besseren und effektiveren Weg als mit wget so einen Aufwand zu betreiben.

@ bastla
Einfach und doch super effizient, danke.


Gruß


also ich teste das ganze mal wie gesagt das kann aber dauern

grüsse
charmi
Member: charmeur
charmeur Sep 28, 2011 at 15:49:14 (UTC)
Goto Top
so nun habe ich mal die sachen durch gestestet und bin bei dem hier geblieben
Adresse = "http://192.168.100.40/printersta.asp"   
Wort = "Ready"  

Set Sh = CreateObject("WScript.Shell")  
QuellText = Sh.ExpandEnvironmentStrings("%temp%" & "\Quelltext.txt")  

Sh.Run "wget --http-user=admin --http-password=1234 --output-document=" & QuellText & " " & Adresse, 0, True  

Set fso = CreateObject("Scripting.FileSystemObject")  
If fso.FileExists(QuellText) Then 
    If InStr(fso.OpenTextFile(QuellText).ReadAll, Wort) > 0 Then

msgbox "Drucker ist Online," & vbNewLine & "das heisst du kannst Drucken.", vbSystemModal  
       
    Else
        

msgbox "Drucker ist nicht erreichbar," & vbNewLine & "ist der Drucker an?", vbSystemModal  

End If
    fso.DeleteFile(QuellText)
Else
    WScript.Echo "Keine Info erhalten!"  
End If

danke an euch alle

grüsse

charmi


übrigens wer fragen zum poolbau hat kann gene fragen da kenne ich mich aus face-smile