Второй вариант быстрее. Первый вариант требует, чтобы клиентское приложение использовало отражение для сопоставления всех полей с элементами объекта. Это отражение всегда намного медленнее, чем прямое попадание на карту, даже если в приложении больше строк кода.
Непосредственно из документов Py3k: http://docs.python.org/dev/py3k/library/urllib.request.html#examples
import urllib.request
# Create an OpenerDirector with support for Basic HTTP Authentication...
auth_handler = urllib.request.HTTPBasicAuthHandler()
auth_handler.add_password(realm='PDQ Application',
uri='https://mahler:8092/site-updates.py',
user='klem',
passwd='kadidd!ehopper')
opener = urllib.request.build_opener(auth_handler)
# ...and install it globally so it can be used with urlopen.
urllib.request.install_opener(opener)
urllib.request.urlopen('http://www.example.com/login.html')
Мой совет состоял бы в том, чтобы поддержать Ваши 2.* перейдите как свое производственное ответвление, пока Вы не сможете получить 3,0 отсортированные материала.
Я собираюсь ожидать некоторое время прежде, чем отодвинуться к Python 3.0. Там кажется большим количеством людей в порыве, но я просто хочу все разобранное и достойный выбор сторонних библиотек. Это может занять год, может потребоваться 18 месяцев, но давление на "обновление" является действительно низким для меня.