В Python, в чем разница между «библиотекой urllib» и «библиотекой сокетов»? - PullRequest
0 голосов
/ 13 ноября 2010

Я изучаю основы сетевого программирования, и в моем задании есть вопрос, на который я не знаю, как ответить.

Чем «библиотека urllib» отличается от «библиотеки сокетов» в Python?Как я могу объяснить это ясно?

1 Ответ

10 голосов
/ 13 ноября 2010

urllib намного выше уровня.

socket обеспечивает низкоуровневый доступ к множеству различных типов сокетов, которые вы можете использовать для связи через любой порт и протокол. Например, вы можете использовать его для электронной почты, SSH, удаленного рабочего стола и т. Д. Вы также можете использовать его для прослушивания порта (для сервера). Почти все сетевые библиотеки Python, включая urllib, так или иначе используют socket.

urllib предназначен для конкретного использования сокетов, а именно на стороне клиента протоколов HTTP (и, необязательно, TLS) и FTP, обычно (но не всегда) с использованием портов 80, 443 или 21.

...