Ответ 1
Когда вы вводите URL-адрес в браузере без протокола, по умолчанию используется HTTP. urllib2
не сделает этого предположения для вас; вам нужно прикрепить его к http://
.
В принципе, я пытаюсь загрузить URL-адрес, используя urllib2 в python.
код выглядит следующим образом:
import urllib2
req = urllib2.Request('www.tattoo-cover.co.uk')
req.add_header('User-agent','Mozilla/5.0')
result = urllib2.urlopen(req)
выводит значение ValueError, и программа подавляет URL-адрес в примере. Когда я обращаюсь к URL-адресу в браузере, он отлично работает.
Любые идеи по устранению проблемы?
UPDATE:
спасибо за Бена Джеймса, и проблема обнаружена = > add 'http://'
Теперь вопрос уточнен: Можно ли обрабатывать такие случаи автоматически с помощью некоторой встроенной функции, или я должен выполнять обработку ошибок с последующей конкатенацией строк?
Когда вы вводите URL-адрес в браузере без протокола, по умолчанию используется HTTP. urllib2
не сделает этого предположения для вас; вам нужно прикрепить его к http://
.
Вы должны использовать полный URL-адрес, включая протокол, а не просто указать имя хоста.
Правильный URL-адрес будет http://www.tattoo-cover.co.uk/
.
Вы можете использовать функцию urlparse для этого, я думаю