Google/Amazon-Suche im Skript!

  • hi,
    ich hab ein problem mit meinem script:

    Spoiler anzeigen
    [autoit]


    #include <GUIConstants.au3>

    [/autoit] [autoit][/autoit] [autoit]

    GUICreate("Search",220,70)
    GUISetState(@sw_show)

    [/autoit] [autoit][/autoit] [autoit]

    $label=GUICtrlCreateLabel("Suchbegriff:",25,15,100)
    $input_field=GUICtrlCreateInput("",5,30,100)
    $amazon=GUICtrlCreateButton("Amazon.de",115,5,100,20,-1,-1)
    $ebay=GUICtrlCreateButton("Ebay.de",115,25,100,20,-1,-1)
    $google=GUICtrlCreateButton("Google.de",115,45,100,20,-1,-1)

    [/autoit] [autoit][/autoit] [autoit]

    $input=GUICtrlRead($input_field)

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    $msg=GUIGetMsg()
    If $msg=$GUI_EVENT_CLOSE Then ExitLoop

    Select

    Case $msg=$amazon
    Run("C:\Programme\Mozilla Firefox\firefox.exe http://www.amazon.de/exec/obidos/ex…field-keywords="&$input&"&mode=blended&tag=firefox-de-21&sourceid=Mozilla-search")
    ExitLoop
    Case $msg=$google
    Run("C:\Programme\Mozilla Firefox\firefox.exe http://www.google.de/search?q="&$input)

    EndSelect

    [/autoit] [autoit][/autoit] [autoit]

    WEnd

    [/autoit]

    Die funktion vom script ist wohl offensichtlich....
    aber wenn ich jetzt einen begriff eingebe und auf z.b. den google-button klicke, öffnet sich nur die startseite!? warum?

    :hm:


    ach ja, ich weis dass ich die ebay-suche noch nicht ganz eingebaut hab ;)

    Einmal editiert, zuletzt von alexirsi (3. Oktober 2006 um 11:06)

    • Offizieller Beitrag

    Bei mir klappts - Google wird mit Suchbegriff aufgerufen.
    *Kopfkratz*

    Hab's jetzt mit deinem Code probiert und Fehler gefunden:
    Du hattest das Eingabefeld nicht ausgelesen.
    Hier die funktionierende Variante:

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>

    [/autoit] [autoit][/autoit] [autoit]

    GUICreate("Search",220,70)
    $label=GUICtrlCreateLabel("Suchbegriff:",25,15,100)
    $input_field=GUICtrlCreateInput("",5,30,100)
    $amazon=GUICtrlCreateButton("Amazon.de",115,5,100,20,-1,-1)
    $ebay=GUICtrlCreateButton("Ebay.de",115,25,100,20,-1,-1)
    $google=GUICtrlCreateButton("Google.de",115,45,100,20,-1,-1)
    GUISetState()

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    $msg=GUIGetMsg()
    Select
    Case $msg=$GUI_EVENT_CLOSE
    ExitLoop
    Case $msg=$amazon
    Run("C:\Programme\Mozilla Firefox\firefox.exe http://www.amazon.de/exec/obidos/ex…field-keywords="&GUICtrlRead($input_field)&"&mode=blended&tag=firefox-de-21&sourceid=Mozilla-search")
    ExitLoop
    Case $msg=$google
    Run("C:\Programme\Mozilla Firefox\firefox.exe http://www.google.de/search?q="&GUICtrlRead($input_field))
    ExitLoop
    EndSelect
    WEnd

    [/autoit]
  • Zitat

    Original von BugFix
    Bei mir klappts - Google wird mit Suchbegriff aufgerufen.
    *Kopfkratz*

    Also bei mir ruft das script nur den firefox mit startseite auf,aber übergibt keine daten!
    Kann das an der beta version liegen?

  • warum nutzt Du nicht gleich die Bookmarklets vom Firefox?
    Einfach in die Adressleiste eingeben:

    google suchbegriff
    leo wort
    wp autoit

    für ebay und amazon ließe sich das ganz einfach nachrüsten ;)

    Folgendes einfach als Bookmark einrichten:
    Schlüsselwort: ebay
    http://search.ebay.de/search/search.dll?from=R40&satitle=%s
    Schlüsselwort: amazon
    http://www.amazon.de/exec/obidos/external-search/?field-keywords=%s&mode=blended&tag=firefox-de-21&sourceid=Mozilla-search

    Einmal editiert, zuletzt von jonk (3. Oktober 2006 um 12:12)

    • Offizieller Beitrag

    Hallo!

    Ja und nein! Google und yhaoo schaffen es solange nur ein wort benutzt wird, logisch da ja nimalsnie ein leerzeichen in der leiste stehen darf!
    Ich habe auch mal eine Suchmaschine für google gemacht:

    Spoiler anzeigen
    [autoit]

    ;~ http://www.google.de/search?hl=de&q=meta+super&meta=
    ;~ Stichwort: meta super;Sprache: deutsch
    ;~ http://www.google.de/search?hl=de&q=%22meta+super%22&btnG=Suche&meta=
    ;~ Stichwort: "meta super";Sprache: deutsch
    #include <GuiConstants.au3>
    $hl = "de"
    $dec = $gui_checked
    $typ = "search"

    [/autoit] [autoit][/autoit] [autoit]

    $gui = GuiCreate("Google", 330, 130)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    $enter1 = GuiCtrlCreateInput("", 10, 10, 300, 20)
    $de = GuiCtrlCreateRadio("Deutsch", 20, 70)
    GUICtrlSetState(-1,$gui_checked)
    $en = GuiCtrlCreateRadio("Englisch", 20, 90)
    $search = GuiCtrlCreateButton("Suche", 110, 60, 210, 40)
    $language = GuiCtrlCreateGroup("Sprachen", 10, 50, 90, 70)
    $search2 = GuiCtrlCreateRadio("Suche", 110, 100,50)
    GUICtrlSetState(-1,$gui_checked)
    $image = GuiCtrlCreateRadio("Bilder", 180, 100,50)
    GuiSetState()
    While 1
    $msg = GuiGetMsg()
    Select
    Case $msg = $GUI_EVENT_CLOSE
    ExitLoop
    Case $msg = $en
    $hl = "en"
    GUICtrlSetData($search,"Search")
    GUICtrlSetData($language,"Languages")
    GUICtrlSetData($de, "German")
    GUICtrlSetData($en, "English")
    GUICtrlSetData($search2, "Search")
    GUICtrlSetData($image, "Image")
    Case $msg = $de
    $hl = "de"
    GUICtrlSetData($search,"Suche")
    GUICtrlSetData($language,"Sprachen")
    GUICtrlSetData($de, "Deutsch")
    GUICtrlSetData($en, "Englisch")
    GUICtrlSetData($search2, "Suche")
    GUICtrlSetData($image, "Bilder")
    Case $msg = $search
    $search22 = GUICtrlRead($search2)
    If $search22 = $gui_checked Then
    $typ = "search"
    Else
    $typ = "images"
    EndIf
    $enter = GUICtrlRead($enter1)
    WinSetTitle($gui,"","Google - "&$enter)
    $enter = StringReplace($enter," ","+")
    $ss = StringSplit($enter,'"')
    For $a = 1 To $ss[0] Step 2
    $enter = StringReplace($enter,'"',"%22",$a)
    Next
    For $a = 2 To $ss[0] Step 2
    $enter = StringReplace($enter,'"',"%22&btnG=Suche",$a)
    Next
    If $typ = "images" Then
    _site('http://images.google.de/images?svnum=10&lr=&safe=off&q='&$enter&'&btnG=Suche')
    Else
    _site('http://www.google.de/'&$typ&'?hl='&$hl&'&q='&$enter&'&meta=')
    EndIf
    WinSetTitle($gui,"","Google")
    GUICtrlSetData($enter1,"")
    EndSelect
    WEnd
    Exit
    Func _site($sSite)
    Opt("WinTitleMatchMode",2)
    If WinExists("Google-Suche") Then WinClose("Google-Suche")
    $oIE=ObjCreate("InternetExplorer.Application.1")
    $SinkObject=ObjEvent($oIE,"IEEvent_","DWebBrowserEvents2")

    $oIE.Visible=1
    $oIE.RegisterAsDropTarget = 1
    $oIE.RegisterAsBrowser = 1
    $oIE.Navigate( $sSite )
    EndFunc

    [/autoit]

    Das waren noch zeiten bevor ich diese schöne funktion "_INetExplorerCapable " Kannte.. Sie wandelt alles unkomforme (wie leerzeichen usw) um in eine internet komporme "Sprache"

    Also bei dir Müssten dann die Run zeilen von google uund yahoo so angepasst werden:

    [autoit]

    Run("C:\Programme\Mozilla Firefox\firefox.exe http://www.amazon.de/exec/obidos/ex…field-keywords="&_INetExplorerCapable($input)&"&mode=blended&tag=firefox-de-21&sourceid=Mozilla-search")
    Run("C:\Programme\Mozilla Firefox\firefox.exe http://www.google.de/search?q="&_INetExplorerCapable($input))

    [/autoit]

    Und oben noch #include <Inet.au3> hinsetzen!

    Nochmal was adners:^^ ich vesrtehe deine aufbauart nicht.. ich würde an deiner stelle (dann geht es auch^^) $input=GUICtrlRead($input_field) einmal vorm 1.Run und einmal vorm 2. Run packen...

    Mfg Spider

    EDIT: habe es mal überarbeitet (also das ganze skript):

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>
    #include <inet.au3>

    [/autoit] [autoit][/autoit] [autoit]

    GUICreate("Search", 220, 70)
    GUISetState(@SW_SHOW)

    [/autoit] [autoit][/autoit] [autoit]

    $label = GUICtrlCreateLabel("Suchbegriff:", 25, 15, 100)
    $input_field = GUICtrlCreateInput("", 5, 30, 100)
    $amazon = GUICtrlCreateButton("Amazon.de", 115, 5, 100, 20, -1, -1)
    $ebay = GUICtrlCreateButton("Ebay.de", 115, 25, 100, 20, -1, -1)
    $google = GUICtrlCreateButton("Google.de", 115, 45, 100, 20, -1, -1)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    While 1
    $msg = GUIGetMsg()
    If $msg = $GUI_EVENT_CLOSE Then ExitLoop

    [/autoit] [autoit][/autoit] [autoit]

    Select

    [/autoit] [autoit][/autoit] [autoit]

    Case $msg = $amazon
    $input = GUICtrlRead($input_field)
    Run("C:\Programme\Mozilla Firefox\firefox.exe http://www.amazon.de/exec/obidos/ex…field-keywords=" & _INetExplorerCapable($input) & "&mode=blended&tag=firefox-de-21&sourceid=Mozilla-search")
    ExitLoop
    Case $msg = $google
    $input = GUICtrlRead($input_field)
    Run("C:\Programme\Mozilla Firefox\firefox.exe http://www.google.de/search?q=" & _INetExplorerCapable($input))
    ExitLoop
    EndSelect

    [/autoit] [autoit][/autoit] [autoit]

    WEnd

    [/autoit]