fork(1) download
  1. import re
  2. pattern = r"(?:https?:\/\/|ftps?:\/\/|www\.)(?:(?![.,?!;:()]*(?:\s|$))[^\s]){2,}"
  3. print(re.findall(pattern, input()))
Success #stdin #stdout 0.03s 9712KB
stdin
Возможно, http://сайт.рф? Ну или http://сайт.рф?id=67 - вроде парсится Ну и не без www.google.ru.
stdout
['http://сайт.рф', 'http://сайт.рф?id=67', 'www.google.ru']