I'm on Win10. I have the following script in folder c:/scratch
and it's called temp.py
. As you can see, it's sole job is to attempt to open the URL that's passed to it via its single command line parameter.
if __name__ == '__main__':
import webbrowser
from sys import argv
webbrowser.open(argv[1])
As instructed in the Zim docs, I open the Tools|Custom Tools
dialogue box, and click on the 'plus' icon, then fill in the details as shown here.

Now I can go back to a Zim page with a URL like this one,

highlight the URL, then choose Launch highlighted URL
from the Tools
menu and presto, that page loads in my browser.
That's the basic idea anyway.