import re
p = re.compile(ur'((\s|\A)((ht|f)tp(s)?://)?(www\.)?([\w\-\.]+)\.\w+([\w\-\./\?#]+)?\b)')
test_str = u"I visited http://www.google.com."
print(re.sub(p, lambda x: x.group(0).replace(" ","~"), test_str))
aW1wb3J0IHJlCnAgPSByZS5jb21waWxlKHVyJygoXHN8XEEpKChodHxmKXRwKHMpPzovLyk/KHd3d1wuKT8oW1x3XC1cLl0rKVwuXHcrKFtcd1wtXC4vXD8jXSspP1xiKScpCnRlc3Rfc3RyID0gdSJJIHZpc2l0ZWQgaHR0cDovL3d3dy5nb29nbGUuY29tLiIKcHJpbnQocmUuc3ViKHAsIGxhbWJkYSB4OiB4Lmdyb3VwKDApLnJlcGxhY2UoIiAiLCJ+IiksIHRlc3Rfc3RyKSk=