so, i am going to be checking this variable (the file name) against what has already been processed.
Also, if anyone has any suggestions as to making this cleaner or more efficient (as is or when I add the loop) i'd appreciate any feedback from experienced users.
Thanks!
Code: Select all
Option Explicit
Dim iim, iim1, status, date, fso, objFso, objFile, extract, strFile, FileNo, iret, WshShell, iMacros, FileInfo, CleanedFileInfo, varnow, varDateFull, varYear, varMonth, varDay
Set WshShell = CreateObject("WScript.Shell")
Set iim1 = CreateObject("iMacros")
Set objFSO = CreateObject("Scripting.FileSystemObject")
varnow = now
varMonth = Month(varnow)
varDay = Day(varnow)
varYear = Year(varnow)
varDateFull = varMonth & "-" & varDay & "-" & varYear & ".csv"
strFile = "c:\temp\output" & varDateFull
If objFSO.FileExists(strFile) Then
'Set objOutputFile = objFSO.OpenTextFile (strFile, FOR_WRITING)
Set objFile = objFSO.OpenTextFile (strFile, ForAppending, OpenAsASCII)
Else
'Set objOutputFile = objFSO.CreateTextFile(strFile)
Set objFile = objFSO.CreateTextFile (strFile, ForAppending, OpenAsASCII)
End If
If Err <> 0 Then
Wscript.Echo "Unable to open " & strFile & " for output."
WScript.Quit
End If
iret = iim1.iimOpen("-ie", true)
Const ForAppending = 8
Const CreateIfNotExist = True
Const OpenAsASCII = 0
Dim macro
macro = macro + "'SET !PLAYBACKDELAY 0.00" + vbNewLine
macro = macro + "URL GOTO=https://www.site.com/" + vbNewLine
macro = macro + "TAG SELECTOR=#httpd_username CONTENT=Username" + vbNewLine
macro = macro + "TAG SELECTOR=#loginButton" + vbNewLine
macro = macro + "SET !ENCRYPTION NO" + vbNewLine
macro = macro + "TAG SELECTOR=#httpd_password CONTENT=PW{{!NOW:yyyymm}}" + vbNewLine
macro = macro + "WAIT SECONDS=2" + vbNewLine
macro = macro + "TAG SELECTOR=#loginButton" + vbNewLine
macro = macro + "WAIT SECONDS=3" + vbNewLine
macro = macro + "TAG SELECTOR=#serviceList>A>IMG" + vbNewLine
macro = macro + "URL GOTO=https://www.webpage.com" + vbNewLine
macro = macro + "TAG POS=1 TYPE=INPUT:SEARCH ATTR=* CONTENT={{!NOW:yyyy-mm-dd}}" + vbNewLine
macro = macro + "TAG POS=1 TYPE=B ATTR=TXT:Mail<SP>Box" + vbNewLine
macro = macro + "'TAG POS=1 TYPE=A ATTR=TXT:TEXT1<SP>and<SP>TEXT2<SP>Outbox<SP>(TEXT3)" + vbNewLine
macro = macro + "TAG POS=1 TYPE=INPUT:SEARCH FORM=ID:downloadFiles ATTR=* CONTENT={{!NOW:yyyy-mm-dd}}" + vbNewLine
macro = macro + "TAG SELECTOR=""HTML>BODY>DIV>DIV:nth-of-type(2)>DIV>DIV>DIV>DIV:nth-of-type(2)>UL>LI>A""" + vbNewLine
macro = macro + "WAIT SECONDS=2" + vbNewLine
macro = macro + "TAG POS=1 TYPE=INPUT:SEARCH FORM=ID:downloadFiles ATTR=* CONTENT={{!NOW:yyyy-mm-dd}}" + vbNewLine
macro = macro + "SET !EXTRACT NULL" + vbNewLine
macro = macro + "TAG POS=1 TYPE=TD ATTR=TXT:*REBRKSO.* EXTRACT=TXT" + vbNewLine
'macro = macro + "PROMPT {{!EXTRACT}}" + vbNewLine
macro = macro + "SAVEAS TYPE=EXTRACT FOLDER=c:\temp FILE=output.csv" + vbNewLine
iret = iim1.iimPlayCode(macro)
FileInfo = iim1.iimGetExtract()
CleanedFileInfo = (Replace(FileInfo,"User File Download - ", ""))
WshShell.Popup CleanedFileInfo,, "Test Output Popup"
objFile.WriteLine varDateFull & "," & time & "," & FileInfo & ","
objFile.Close
iret = iim1.iimExit()
WScript.Quit()