met vbs zoekregel vullen

Status
Niet open voor verdere reacties.

Jana8888

Gebruiker
Lid geworden
25 okt 2019
Berichten
5
Goeiedag,

Ik wil een VB-script schrijven waarmee ik bepaalde zoekwoorden naar de zoekregel van een zoekmachine (Google) kan schrijven.

Doel is op die manier eenvoudig te kunnen zien hoe hoog een bepaalde site in de resultaten terecht komt.
Het kan natuurlijk simpeler, maar ik wil het in vbs maken.


Uiteraard heb ik al een script waarmee ik een browser open en naar een zoekmachine laat gaan.
In dit geval opent Edge naar www.google.com

Maar nu wil ik dus dat het script de vastgestelde zoekwoorden in de zoekregel invult.
Weet iemand de oplossing ?

M.vr.gr. Jan A
 
Uiteraard heb ik al een script waarmee ik een browser open en naar een zoekmachine laat gaan.
In dit geval opent Edge naar www.google.com
Kan je dit script eens plaatsen, met internet explorer is dit geen probleem, maar met edge?
 
Je hebt het zoekvak niet per se nodig, het kan ook zo.
Code:
http://www.google.com/search?q=helpmij+forum
Hoe je de resultaten wil verwerken is mij tot nu toe nog een raadsel.
 
' dit gebruik ik als ik gebruik wil maken van Firefox.

dim wshshell

Function qq(str)
qq = Chr(34) & str & Chr(34)
End Function

FirefoxProfile = "default"
FirefoxPath = "C:\Program Files\Mozilla Firefox\firefox.exe"
webappurl = "https://www.google.com"

Height = "700"
Width = "920"
Status ="0"
Toolbar = "0"
Menubar = "0"


Set wshshell = WScript.CreateObject("WScript.Shell")

wshshell.run qq(FirefoxPath) & " -P " & qq(FirefoxProfile) _
& " -status " & qq(status) & " -Toolbar " & qq(toolbar) & " -menubar " & qq(menubar) _
& " -Height " & qq(Height) & " -Width " & qq(Width) _
& " " & webappurl

Set wshshell = Nothing
wscript.quit


' En dit als ik gebruik wil maken van Tor
' In feite dezelfde code, alleen is het pad naar de browser veranderd.
' (Tor maakt gebruik van Firefox)

dim wshshell

Function qq(str)
qq = Chr(34) & str & Chr(34)
End Function

FirefoxProfile = "default"
FirefoxPath = "C:\tor\tor browser\browser\firefox.exe"
webappurl = "https://www.google.com"

Height = "700"
Width = "920"
Status ="0"
Toolbar = "0"
Menubar = "0"


Set wshshell = WScript.CreateObject("WScript.Shell")

wshshell.run qq(FirefoxPath) & " -P " & qq(FirefoxProfile) _
& " -status " & qq(status) & " -Toolbar " & qq(toolbar) & " -menubar " & qq(menubar) _
& " -Height " & qq(Height) & " -Width " & qq(Width) _
& " " & webappurl

Set wshshell = Nothing
wscript.quit


' Ik heb Edge als standaar browser ingesteld, dus daarvoor hoef ik geen pad te benoemen.
' Heb het wel geprobeerd met: C:\Windows\SystemApps\Microsoft.MicrosoftEdge_8wekyb3d8bbwe\MicrosoftEdge.exe​ , maar dat werkt niet
' In mijn geval wordt het script dan:

dim wshshell
Set shl = CreateObject("Wscript.shell")
shl.run "http://www.google.com"
wscript.quit
 
Ik heb een script geschreven waarmee ik verkeer genereer op bepaalde pagina's.
Ik wil nu elke dag even kijken hoe hoog die site in Google staat als ik telkens dezelfde zoekwoorden gebruik.
En omdat ik een nerd ben doe ik dat uiteraard met een scriptje.

Hoe dan ook Alphamax: jouw antwoord heeft me weer een stuk verder geholpen. Dankjewel.
 
Zo zou het ook kunnen, het script kijkt naar de rang/plek/regel in de zoekresultaten van de eerste pagina.

Code:
Option Explicit

    Dim ObjItem, strQuery, strResponseText, strUrlToRank, vntRank
    
    strQuery = "27 oktober 2019" 'zoekwoorden
    strUrlToRank = "https://www.kalender-365.nl/kalender/2019/oktober.html" 'site waarvan je de hoogte in de resultaten wil weten

    With CreateObject("MSXML2.XMLHTTP")
        .Open "GET", "https://www.google.com/search?q=" & Replace(strQuery, " ", "+"), False 
        .Send
	strResponseText = .ResponseText 'resultaten zoekopdracht met zoekwoorden
        With CreateObject("HTMLFILE")
	    .write "<html><body></body></html>"
	    .body.innerHTML = strResponseText
            For Each objItem In .body.document.all
                If objItem.className = "g" Then 'is item een resultaat?
                    vntRank = vntRank + 1 'hoogte resultaat ophogen
                    If objItem.getElementsByTagName("a")(0).href = strUrlToRank Then 'is resultaat de site?
                        MsgBox "Query: " & strQuery & vbCrLf & _
                               "UrlToRank: " & strUrlToRank & vbCrLf & _
                               "Rank: " & vntRank 'bericht
                        wscript.Quit 'einde
                    End If
                End If
            Next
        End With
    End With
    MsgBox "Done." 'geen site gevonden
 
Laatst bewerkt:
Ik vind het een heel mooi script. Echt. Maar ik begrijp niet hoe het werkt.
Op welke zoekwoorden moet Google hier dan reageren ?
Als ik in Google -handmatig- "https://www.kalender-365.nl/kalender/2019/oktober.html" typ, dan is die site sowieso in de eerste hits aanwezig.
Op basis waarvan wordt een tweede plek bereikt ?
Ik zou benieuwd zijn naar een kort commentaar per script-regel.
Maar ik kan me heel goed voorstellen dat je geen zin hebt een amateur alles voor te kauwen.
Hoe dan ook: erg bedankt.
 
Op welke zoekwoorden moet Google hier dan reageren ?
op strQuery
Als ik in Google -handmatig- "https://www.kalender-365.nl/kalender/2019/oktober.html" typ, dan is die site sowieso in de eerste hits aanwezig.
Klopt
Als je googled met "27 oktober 2019" dan is
Rank/resultaat 1, https://www.dagjeweg.nl/kalender/27-oktober-2019
Rank/resultaat 2, inderdaad https://www.kalender-365.nl/kalender/2019/oktober.html
Rank 2 laat het vbs script dan ook zien

google maar eens met "28 oktober 2019", dan is
Rank/resultaat 1, https://www.kalender-365.nl/kalender/2019/oktober.html
Rank 1 laat het vbs script dan ook zien

Op basis waarvan wordt een tweede plek bereikt ?
Als de zoekwoorden inderdaad de tweede plaats innemen in de zoekresultaten van google

Het script doet niets anders dan hoe jij met je ogen de zoekresultaten controleert.
Lees anders je eerste vraag nog eens na.
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan