Неудобный URL в Python 3 - PullRequest
       23

Неудобный URL в Python 3

0 голосов
/ 11 декабря 2018

Я использую этот код для сокращения URL-адресов в Python 3, но код возвращает URL-адрес в том виде, в каком он есть (сокращен), так что я должен сделать, чтобы получить его без сокращений?

import requests
import http.client
import urllib.parse as urlparse   

def unshortenurl(url):
    parsed = urlparse.urlparse(url) 
    h = http.client.HTTPConnection(parsed.netloc) 
    h.request('HEAD', parsed.path) 
    response = h.getresponse() 
    if response.status/100 == 3 and response.getheader('Location'):
        return response.getheader('Location') 
    else: return url

1 Ответ

0 голосов
/ 11 декабря 2018

В python3 response.status/100 == 3 будет True только для кода состояния 300. Для любого другого кода 3xx это будет False.Вместо этого используйте разделение по полу response.status//100 == 3 или какой-либо другой способ проверки кодов перенаправления.

РЕДАКТИРОВАТЬ: похоже, вы используете код из ТАК вопрос, отправленный @ Aybars , и есть комментарий навершина фрагмента, что делать в python3.Также было бы неплохо указать источник кода.

...