Как получить домен веб-сайта с архивированным веб-сайтом, используя заархивированный URL в Python? - PullRequest
0 голосов
/ 18 июня 2019

С учетом URL-адреса, такого как:

http://web.archive.org/web/20010312011552/www.feralhouse.com/cgi-bin/store/commerce.cgi?page=ac2.html

Есть ли способ (с использованием некоторой библиотеки, пакета или ванильного Python) получить домен "www.feralhouse.com"?

Я подумал о простом использовании split в «www», разделении элемента второго индекса в «com» ​​и повторной группировке элемента первого индекса, например:

url = "http://web.archive.org/web/20010312011552/www.feralhouse.com/cgi-bin/store/commerce.cgi?page=ac2.html"
url1=url.split("www")
url2=url1[1].split("com")
desired_output = "www"+url2[0]+"com"
print(desired_output)
#www.feralhouse.com

Но есть некоторые исключения из этогометод (сайты без www, я полагаю, они полагаются на браузер, автоматически меняющий это).Я бы предпочел менее "хакерский" подход, если это возможно.Заранее спасибо!

ПРИМЕЧАНИЕ. Мне не нужно решение только для этого КОНКРЕТНОГО URL-адреса. Мне нужно решение для всех возможных заархивированных URL-адресов.

РЕДАКТИРОВАТЬ: еще один пример URL-адреса

http://web.archive.org/web/20000614170338/http://www.clonejesus.com/

1 Ответ

1 голос
/ 18 июня 2019

Два метода, один с разделением, один с re модулем:

s = 'http://web.archive.org/web/20010312011552/www.feralhouse.com/cgi-bin/store/commerce.cgi?page=ac2.html'

print(s.split('/', 5)[-1])

import re

print(re.findall(r'\d{14}/(.*)', s)[0])

Отпечатки:

www.feralhouse.com/cgi-bin/store/commerce.cgi?page=ac2.html
www.feralhouse.com/cgi-bin/store/commerce.cgi?page=ac2.html
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...