#cs ----------------------------------------------------------------------------
 AutoIt Version:     3.3.14.2
 Author:
 Quelle:
 Dateiname:          Web-test_12_10_16.au3
 Script Function:    Webseite auslesen
 Beschreibung:       Öffnet den Internet Explorer, ....
#ce ----------------------------------------------------------------------------

#include <IE.au3>                                                           ; Funkzionen für den Internet Explorer laden
#include<Date.au3>															; Funkzionen füs Datum laden
OnAutoItExitRegister("onExit")                                              ; Was alles gemacht werden muss wenn das Script beendet wurde
$oIE = _IECreate()                                                          ; Öffnet den Internet Explorer

  $sURL      = "http://www.e-bay.de/"
  $File_name = "/Datei_Name.txt"


_IENavigate($oIE, $sURL)

HotKeySet("^{SPACE}", "hotkeyPressed")                                      ; Tastendruck "STRG + Leertaste" => Func hotkeyPressed()

While True                                                                  ; Endlosschleife
    Sleep(1000)                                                             ;    Warten für 1.000 milli sekunden
    If Not ProcessExists("iexplore.exe") Then
		MsgBox (64, "Ende", "Browser Fenster wurde geschloßen")
		ExitLoop                   										   ;    Prüfen ob die Datei "iexplore.exe" noch ausgefürt wird wenn nicht AutoIT Script beenden
	Endif
WEnd                                                                        ; Endlosschleife Ende

Func hotkeyPressed()                                                        ; Funktion Start

$sSource = _IEDocReadHTML($oIE)                                             ; Aktuellen Quelltext aus dem Internet Explorer Lesen

#cs ----------------------------------------------------------------------------
    1) Datum lesen
    2) Herstellernummer lesen
    3) EAN lesen
    4) WebLink lesen
    5) Liferanten lessen
    6) EK lesen
    7) Daten Suchen und ersätzen in gelesenen Werten
    8) Datei Öffnen
	9) Daten Schreiben
	10) Datei Schlißen
	11) Ausgabe
#ce ----------------------------------------------------------------------------

;  1) bis 6)
	$aDatum            = _NowDate()
	$aURL              = _IEPropertyGet($oIE, "locationurl")
    $aHerstellernummer = StringRegExp($sSource, "(?s)<td><strong>Herstellernummer</strong></td>\s*<td>(\d+)</td>", 3)
	$aEAN              = StringRegExp($sSource, "(?s)<td><strong>EAN</strong></td>\s*<td>(\d+)</td>", 3)
	$aLiName           = StringRegExp($sSource, "<input name=""name"" type=""hidden"" value=""(.+)"">", 3)
	$aEK               = StringRegExp($sSource, "<td class=""align-right"">(.+)€</td>", 3)

; 7)
    For $i = 0 to UBound($aEK)-1
		$aEK[$i] = StringReplace ($aEK[$i], ".", ",")
	Next
    For $i = 0 to UBound($aLiName)-1
		$aLiName[$i] = StringReplace ($aLiName[$i], "&amp;", "&")
	Next

; 8)
	If Not FileExists(@DesktopDir & $File_name)  then
		$File = FileOpen(@DesktopDir & $File_name, 2)		; Datei Erstellen und öffnen
		FileWrite($File, "Datum; Herstellernummer; EAN; Lieferantenname; EK; URL"& @CRLF)
	Else
		$File = FileOpen(@DesktopDir & $File_name, 1)		; Datei Existirtbereits, Öffnen und ans Ende schreiben
	EndIf

	If $File = -1 Then												; Pfüfen ob die Datei richtig geöffnet wurde
	 MsgBox(0, "Fehler", "Datei kann nicht geöffnet werden.")
	 Exit
	EndIf

; 9)
	; Daten Schreiben
	For $i = 0 To UBound ($aEK)-1
	 FileWrite($File, $aDatum & "-" & @hour & ":" & @min & ":" & @sec & ";" & $aHerstellernummer[0] & ";" & $aEAN[0] & ";" & $aLiName[$i] & ";" & $aEK[$i] & ";" & $aURL & @CRLF)
	Next

; 10)
    FileClose($File)

; 11)
	; Arrey Löschen
	Dim $aHerstellernummer[UBound($aHerstellernummer,1)]
	Dim $aEAN[UBound($aEAN,1)]
	Dim $aLiName[UBound($aLiName,1)]
	Dim $aEK[UBound($aEK,1)]


	MsgBox (64, "Perfekt", "Lesen und Speichern", 0.5)
;	_IENavigate($oIE, $sURL)

EndFunc   ; ==> hotkeyPressed

Func onExit()                                                               ; Funktion Start
    _IEQuit($oIE)                                                           ;     Internet Explorer Schlißen
    MsgBox (0,"onExit", "Danke, AutoIT-Script ist beendet!")                ;     Info Box, als Debug damit cih weis wann die Func ausgefürt wird
    Exit                                                                    ;     AutoIt programm beenden
EndFunc   ; ==> onExit                                                      ; Funktion Ende