Get The URLs and Names For Open Safari Tabs With AppleScript

August - 2021

Paste this into the Script Editor app and run it as AppleScript to get the title and URL for all your open tabs in safari. It uses ~~~ as a separator. Using an actual tab character might work, but your milage may vary. (Commas are ill advised since they are a valid URL character)

tell application "Safari"
    set tabList to ""
    set numberOfWindows to count (every window where visible is true)
    repeat with windowNumber from 1 to numberOfWindows
        set numberOfTabs to number of tabs in window windowNumber
        repeat with tabNumber from 1 to numberOfTabs
            set tabName to name of tab tabNumber of window windowNumber
            set tabURL to URL of tab tabNumber of window windowNumber as string
            set tabList to tabList & tabName & "~~~" & tabURL & linefeed as string
        end repeat
    end repeat
end tell

return tabList

This is what I used to capture my browsing history each day while I was using Safari. Chrome is gonna take some more work.

I found the core of this script on another site, but I'm not sure where. If I find it, I'll update this with a link.