AutoHotkey Webinar- Advanced Web Scraping with AutoHotkey

WebScraping with AutoHotkeyToday’s AutoHotkey Webinar on Web Scraping with AutoHotkey we covered some “fun” topics.   We also demonstrated using Visual Events 2 to detect Event Listeners on a page

Video Hour 1: High-level overview

Video Hour 2: Q&A

Script highlight

; Stupid simple webScraping with AutoHotkey
Send, ^a ;Select All
sleep, 50
Send, ^c ;copy
sleep, 50
Clipboard:=StrSplit(Clipboard,”:”).1 ;split the clipboard on the colon and return everything to the left of the first one
Send, ^v ;paste
sleep, 350
Send, {tab 4} ;tab to the next field where I need to re-run

We also showed a bit about dealing with Try and using .item[0] in the DOM call. i.e. instead of using

pwb.document.getElementsByClassName(“feed”)[0].InnerText
use
pwb.document.getElementsByClassName(“feed”).item[0].InnerText
This way, if an element doesn’t exist, it will not error out.

To wait for it to be present you could do this

while (pwb.document.getElementsByClassName(“feed-identity-module__stat link-without-visited-state”).length < 3){
ToolTip, Here
Sleep, 50
Cap’n Odin offered up these two gems.  The first will close all running AutoHotkey scripts and the second one will pause them.

; Close all AutoHotkey scripts
DetectHiddenWindows On
Winget, lst, List, ahk_exe autohotkey.exe

loop % lst {
hwnd := lst%A_Index%
if(hwnd != A_ScriptHwnd) {
WinClose, % “ahk_id ” hwnd
}
return

; pause all AutoHotkey scripts
DetectHiddenWindows On
SetTitleMatchMode, 2
Winget, lst, List, AutoHotkey ahk_exe autohotkey.exe

loop % lst {
hwnd := lst%A_Index%
if(hwnd != A_ScriptHwnd) {
PostMessage, 0x111, 65306, , , % “ahk_id ” hwnd
}
}

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.