Получить URL страницы в python - PullRequest
0 голосов
/ 19 июня 2020

Мой вопрос может показаться немного странным.

Итак, у меня есть страница с другим URL-адресом, но все они оказываются на одной странице. Итак, могу ли я получить этот основной URL-адрес из старого URL-адреса в python. Например:

1) https://www.verisk.com/insurance/products/iso-forms/
2) https://www.verisk.com/insurance/products/forms-library-on-isonet/

Оба окажутся на одной странице, а именно:

https://www.verisk.com/insurance/products/iso-forms/

Итак, для каждого URL-адреса я могу узнать конечный URL-адрес, по которому он будет приземляться, используя Python (У меня есть список из 1к URL). И мне нужен еще один список того, где находятся эти URL-адреса соответственно!

Ответы [ 2 ]

1 голос
/ 19 июня 2020

Простой подход с urllib.request:

from urllib.request import urlopen
resp = urlopen("http://sitey.com/redirect")
print(resp.url)

Возможно, вы захотите использовать потоки, если вы делаете 1000 URL ...

1 голос
/ 19 июня 2020

Вот один из способов сделать это, используя запросы библиотеку.

import requests

def get_redirected_url(url):
    response = requests.get(url, stream=True)  # stream=True prevents fetching the actual content
    return response.url

Это очень упрощенный пример, и в реальной реализации вы хотите обработать ошибку, возможно, задержите повторяет попытки и, возможно, проверяет, какое перенаправление вы получаете. (только постоянные перенаправления?)

...