Найти - Пользователи
Полная версия: Google chrome url
Начало » Python для новичков » Google chrome url
1 2
Egor2010
как сделать также как у google chrome ?
ввел к примеру только google.ru он исправляет на http://www.google.ru/
а если вводиш http://www.google.ru/ то он нечего не исправляет
или если вводиш www.google.ru то исправляет на http://www.google.ru/
PooH
Добавить схему просто, вам еще на первый такой вопрос посоветовали, воспользуйтесь urlparse из стандартной библиотеки. Разбираете url на части и если scheme пуста, ставите в нее ‘http’ и снова собираете урл.

А вот насчет замены “домен” на “www.домен”, то насколько я понимаю, тут только запросом на на сервер и если возвращается код 301 то меняем и запоминаем для себя. Без этого менять не получится, это могут быть и разные сайты.
Egor2010
PooH
Добавить схему просто, вам еще на первый такой вопрос посоветовали, воспользуйтесь urlparse из стандартной библиотеки. Разбираете url на части и если scheme пуста, ставите в нее ‘http’ и снова собираете урл.А вот насчет замены “домен” на “www.домен”, то насколько я понимаю, тут только запросом на на сервер и если возвращается код 301 то меняем и запоминаем для себя. Без этого менять не получится, это могут быть и разные сайты.
А без urlparse не как ?
terabayt
def f(s):
    i = s.find("://")+1
    if not i:
        s = "http://" + s
        i += 6
    if not s[i+2:].find('/')+1:
        s += '/'
    return s
пример
a = ["http://www.google.com/",
     "http://www.google.com",
     "www.google.com/",
     "www.google.com",
     "http://www.google.com/ghsagfhashgf/sahgds",
     "www.google.com/ghdsghsd/hgagfsagf.hh",
     "https://www.google.com/",
     "https://www.google.com",
     "https://www.google.com/ghsagfhashgf/sahgds"]
for i in a:
    print f(i)
http://www.google.com/
http://www.google.com/
http://www.google.com/
http://www.google.com/
http://www.google.com/ghsagfhashgf/sahgds
http://www.google.com/ghdsghsd/hgagfsagf.hh
https://www.google.com/
https://www.google.com/
https://www.google.com/ghsagfhashgf/sahgds
Egor2010
terabayt
а как этот код использовать ?
допустим url=“google.ru”
и должен получиться url1
url1="http://www.google.ru/"
terabayt
def f_url(s):
    i = s.find("://")+1
    if not i:
        s = "http://" + s
        i += 6
    if not s[i+2:].find('/')+1:
        s += '/'
    return s
url="google.ru"
url1 = f_url(url)
но получится http://google.com
как писал PooH
А вот насчет замены “домен” на “www.домен”, то насколько я понимаю, тут только запросом на на сервер и если возвращается код 301 то меняем и запоминаем для себя. Без этого менять не получится, это могут быть и разные сайты.
Egor2010
terabayt
Тоесть www.**** подставить не получится ?
Если возможности войти в интернет нет?
terabayt
можно подставлять сразу www, но не факт что это будет правильный адрес.
Egor2010
Вот ошибка выполнения
>>> url="//bits.wikimedia.org/favicon/wikipedia.ico"
>>> f_url(url)
'http:////bits.wikimedia.org/favicon/wikipedia.ico'
terabayt
а что должно быть? у меня firefox делает переадресацию на
file:////bits.wikimedia.org/favicon/wikipedia.ico
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB