Итак, я некоторое время занимался некоторыми исследованиями, и я не мог найти ничего об обнаружении URL-адреса в строке. Проблема в том, что большинство результатов заключается в определении того, является ли строка URL-адресом, а не содержит URL-адрес. В 2 результаты, которые выглядят лучше для меня являютсяPython - обнаружение (spammy) URLS в строке
Regex to find urls in string in Python и Detecting a (naughty or nice) URL or link in a text string
но первое требует HTTP: //, который не является чем-то спамеры будут использовать (: P), а второй один не в regex - и мои ограниченные знания не знают, как перевести любой из них. Что-то я рассматривал делать это, используя что-то тусклый, как
spamlist = [".com",".co.uk","etc"]
for word in string:
if word in spamlist:
Do().stuff()
Но это было бы честно делать больше плохого, чем хорошего, и я 100% уверен, что это лучший способ, используя регулярные выражения или что-нибудь!
Так что если кто-нибудь знает что-нибудь, что могло бы мне помочь, я был бы очень благодарен! Я занимаюсь только питоном в течение 1-2 месяцев и не очень интенсивно в течение этого периода, но чувствую, что делаю большой прогресс, и на самом деле все это на самом деле.
EDIT: Извините, что не указали ранее, я ищу, чтобы использовать это локально, а не веб-сайт (apache) или что-то подобное. Больше пытаюсь очистить любые ссылки из файлов, которые я повесил.
Вы рассмотрели более сложные методы обнаружения спама? Как использование существующего зрелого решения, такого как SpamAssassin? –
как упоминание @ivan_pozdeev не пытайтесь заново изобрести колесо ... поскольку этот материал действительно сложный, особенно потому, что URL-адрес без http: // настолько разрешен. – user3012759
Решение в [Обнаружение (непослушный или красивый) URL-адрес. ..] (http://stackoverflow.com/questions/700163) * есть * regex btw. –