; -------------------------------Minds------------------------------- PostToTumblr: CurrentSite := "Tumblr" Message = Navigating to Post Creationg Page SaveOrPostProgress(Message,PostType:="Tooltip,ErrorLoggingTextFile,DiscordErrorLogging") URLAttempt := NavigateFromBaseURLTo("https://www.tumblr.com/") if(URLAttempt = "Failed") Return Status := CheckCurrentTabForCurrentSite() if(Status){ Return } ; Check Login Status ; ------------------------------------------------ Message = Checking Login Status SaveOrPostProgress(Message,PostType:="Tooltip") Xpath = (//button[normalize-space()='Photo'])[1] try ElementInnerText := driver.findelementbyxpath(Xpath).Attribute("innerText") ;XPATH Inner Text if(ElementInnerText != "Photo"){ Message = Site is Logged out. Please log back in. SaveOrPostProgress(Message:=Message,PostType:="Tooltip,ErrorLoggingTextFile,ErrorSummaryVar,DiscordErrorLogging") Return } ; Start Text Post ; ------------------------------------------------ Message = Creating New Post SaveOrPostProgress(Message,PostType:="Tooltip,ErrorLoggingTextFile,DiscordErrorLogging") Xpath = (//button[normalize-space()='Text'])[1] Status := Selenium_LoopToClickXpath(Xpath:=Xpath,NumOfLoops:=2,SleepLength:=1000) if(status){ Message = Failed to Start Post. Check Login Status SaveOrPostProgress(Message,PostType:="Tooltip,ErrorLoggingTextFile,ErrorSummaryVar,DiscordErrorLogging") Return } Xpath = (//span[@data-rich-text-placeholder='Title'])[1] Status := Selenium_LoopToSendValueToXpath(Xpath:=Xpath,NumOfLoops:=2,SleepLength:=1000,StringTextContent:=PostTitle, ClearElement:=0) if(status){ Message = Failed to Input Post Title SaveOrPostProgress(Message,PostType:=",ErrorLoggingTextFile,ErrorSummaryVar,DiscordErrorLogging") Return } Xpath = (//span[@data-rich-text-placeholder='Go ahead, put anything.'])[1] ; newline is needed so the "attach image" to post option appears in the next line down PostBodyWithNewLine = %PostBody%`n Status := Selenium_LoopToSendValueToXpath(Xpath:=Xpath,NumOfLoops:=1,SleepLength:=1000,StringTextContent:=PostBodyWithNewLine, ClearElement:=0) if(status){ Message = Failed To Input Post Body SaveOrPostProgress(Message,PostType:=",ErrorLoggingTextFile,ErrorSummaryVar,DiscordErrorLogging") Return } if(ImageAttachmentFilepath){ ; Click into space below the preview image so the "add photo" button shows up Xpath = (//div[@class='block-list-appender wp-block'])[1] try, driver.FindElementByXPath(Xpath).click() ; Xpath = (//button[@title='Add photo'])[1] ; Status := Selenium_LoopToClickXpath(Xpath:=Xpath,NumOfLoops:=2,SleepLength:=1000) ; Click the Photo Icon on the next line down to attach an image Xpath = (//button[@title='Add photo'])[1] Status := Selenium_LoopToClickXpath(Xpath:=Xpath,NumOfLoops:=2,SleepLength:=1000) if(status){ Message = Failed to Click Attach Image Button SaveOrPostProgress(Message,PostType:=",ErrorLoggingTextFile,ErrorSummaryVar,DiscordErrorLogging") Return } ; send image filepath to element to attach picture Xpath = (//input[@role='button'])[1] Status := Selenium_LoopToSendValueToXpath(Xpath:=Xpath,NumOfLoops:=2,SleepLength:=1000,StringTextContent:=ImageAttachmentFilepath, ClearElement:=0) if(status){ Message = Failed to Attach Image to Post SaveOrPostProgress(Message,PostType:=",ErrorLoggingTextFile,ErrorSummaryVar,DiscordErrorLogging") Return } } ; Input Tags Xpath = (//textarea[@placeholder='#add tags to help people find your post'])[1] try, driver.FindElementByXPath(Xpath).SendKeys(PostTags) try, driver.SendKeys(driver.Keys.Enter) sleep, 1000 if (ConfirmBeforeSubmit && ConfirmBeforeSubmitMsgboxFunc() != true) { Message = User Selected STOP button when asked for confirmation. Cancelling Rest of Site Upload. SaveOrPostProgress(Message:=Message, PostType:="Tooltip,ErrorLoggingTextFile,ErrorSummaryVar,DiscordErrorLogging") return } Xpath = (//span[normalize-space()='Post now'])[1] Status := Selenium_LoopToClickXpath(Xpath:=Xpath,NumOfLoops:=2,SleepLength:=1000) if(status){ Message = Failed to Click Post Now Button SaveOrPostProgress(Message,PostType:=",ErrorLoggingTextFile,ErrorSummaryVar,DiscordErrorLogging") Return } /*; start photo post button Xpath = (//button[normalize-space()='Photo'])[1] Status := Selenium_LoopToClickXpath(Xpath:=Xpath,NumOfLoops:=2,SleepLength:=1000) if(status){ Message = Failed to Start Post SaveOrPostProgress(Message,PostType:="Tooltip,ErrorLoggingTextFile,ErrorSummaryVar,DiscordErrorLogging") } if(ImageAttachmentFilepath){ ; Attach Image Xpath = (//input[@role='button'])[1] Status := Selenium_LoopToSendValueToXpath(Xpath:=Xpath,NumOfLoops:=2,SleepLength:=1000,StringTextContent:=ImageAttachmentFilepath, ClearElement:=0) if(status){ Message = Failed to Attach Image SaveOrPostProgress(Message,PostType:="Tooltip,ErrorLoggingTextFile,ErrorSummaryVar,DiscordErrorLogging") } } ; input Text Post Xpath = (//span[@data-rich-text-placeholder='Go ahead, put anything.'])[1] Status := Selenium_LoopToSendValueToXpath(Xpath:=Xpath,NumOfLoops:=2,SleepLength:=1000,StringTextContent:=) */ IniWrite, Successful, %StatusFileFilePath%, Status, %CurrentSite% AddToTotalPostsPostedCount() PauseBetweenPosts() DevModeMsgBox("done!") Message = Post Publish Successful SaveOrPostProgress(Message:=Message,PostType:="Tooltip,ErrorLoggingTextFile,DiscordErrorLogging") Return ; -------------------------------/Minds-------------------------------