The simplest solution is to add the URL as additional data passed to the clicked
signal handler:
# handle_click will receive additional url arg along with the button
button.connect('clicked', handle_click, url)
In PyGTK you can also add any attribute to a widget by just assigning to it, even without subclassing:
# handle_click will be called with button and can access button.url
button.url = url
button.connect('clicked', handle_click)