#1 | Python Socket | Как Работает Сеть?

Sdílet
Vložit
  • čas přidán 28. 10. 2020
  • На сегодняшний день почти все электронный устройства взаимодействуют с Сетью и Интернетом. Начиная от вашего компьютера, заканчивая тостером. Мы уже не можем представить мир без сетевой коммуникации.
    И чтобы разобраться "Как это всё работает", и был сделан данный ролик. В нём мы подробно разберём, что такое: TCP/IP, Сетевый пакеты, Адреса, Сервер - Клиент, и т.д.
    Так же, в конце ролика мы закрепим изученный материал, и напишем чат на языке программирования Python c использованием библиотеки Socket.
    Привет! Меня зовут Игорь. На моём канале ты сможешь найти уроки по программированию нейросетей.
    Моя цель - сделать программирование более доступным и понятным. Для просмотра моих видео вам не нужно высшее образование по Computer science. Все непонятные темы и термины я буду понятно объяснять и показывать на примерах.
    Оставайся с нами, и чтобы не пропустить ни одного видео - подписывайся на канал и нажимай на колокольчик!
    💲💲 Поддержи проект на Boosty - boosty.to/pseudodev
    ► Плейлист "Программирование на Практике" - • Программирование на пр...
    ► Плейлист “Нейронные Сети на Понятном Языке” - • Нейронные Сети на Поня...
    ► Плейлист "Изучение NumPy" -
    • Изучение NumPy
    ✅ Группа VK - bit.ly/VK_PseudoDev
    ✈️ Telegram канал - t.me/PseudoDeveloper
    #python #socket #интернет

Komentáře • 125

  • @dev_line
    @dev_line Před rokem +2

    Очень интересная библиотека! Спасибо за видео!

  • @Sergey-zb7je
    @Sergey-zb7je Před rokem +5

    Спасибо большое, коллега! Это был превосходный урок!))

  • @fadeeva.innussik
    @fadeeva.innussik Před rokem +1

    за все время изучения сетей, впервые вжизни вижу чтобы понятно обьяснили что такое порт

  • @skydev.community
    @skydev.community Před 5 měsíci

    Ну это самый лучший гайд по сокету! Сколько видосов я пересмотрел, ни в 1 нет такого хорошего пояснения! Спасибо большое!

  • @12CadetSpaceCadet
    @12CadetSpaceCadet Před 2 lety +30

    Продолжай вести канал ! У тебя прям дар обьяснять !

    • @user-nq3oq6ke1y
      @user-nq3oq6ke1y Před rokem

      Поддерживаю, прекрасная подача.

  • @user-go8te3ub3z
    @user-go8te3ub3z Před rokem

    Спасибо! Вы многое для меня прояснили.

  • @SALUTYT
    @SALUTYT Před 6 měsíci

    Огромное спасибо автору за такой крутой гайд!

  • @vovahlyastykov6864
    @vovahlyastykov6864 Před 9 měsíci

    Огромное спасибо за тайм код

  • @jagorrim2371
    @jagorrim2371 Před 2 lety +1

    Привет, у меня вопрос. Как заставить приложение работать именно с сетью, чтобы данные можно было передавать с пк на пк или с пк на сервер (и если на сервер, то какой стоит брать?)?

  • @NamelessSpirit
    @NamelessSpirit Před rokem +2

    Я хочу выразить тебе огромную благодарность за контент. Ты просто великолепно объясняешь! В процессе обучения мне пришлось посмотреть и почитать оооочень много инфы. Твоя подача просто великолепна! Ты не только показываешь - ты понятно и простым языком разжёвываешь КАК это работает и почему. Спасибо, спасибо, спасибо!)

  • @klenoff4iks134
    @klenoff4iks134 Před 4 měsíci

    спасибо, отлично обьяснили материал

  • @user-sz7tj9xx5f
    @user-sz7tj9xx5f Před rokem

    Лучший! Спасибо!🥰

  • @roofwalkermx
    @roofwalkermx Před 3 lety +5

    Спасибо! Внятно и подробно! Класс!

  • @nickpark5050
    @nickpark5050 Před 2 lety +2

    На *nix операционных системах порты с 1 по 1024 зарезервированы для нужд самой системы. Доступные для пользовательских приложений порты начинаются с 1025 и до 2^16.

  • @riam875
    @riam875 Před 2 lety +1

    Привет, посоветуешь книги или другие ресурсы чтоб углубиться в эту тему. Просто их слишком много и я не могу выбрать.

  • @uu-on1oj
    @uu-on1oj Před 2 lety +13

    Неплохо, но есть парочку но.
    1. socket.socket() - это создание объекта класса socket, если уж говорить максимально правильно.
    2. while - это не функция, а циклическая конструкция
    3. accept() - не функция, а метод объекта, который расположен в переменной server
    4. переменная user содержит socket клиента

    • @PseudoDev
      @PseudoDev  Před 2 lety +3

      Хорошо, приму к сведению 😅

    • @donnillorussia
      @donnillorussia Před 2 lety

      @@PseudoDev Уж прими, пожалуйста. Когда услышал "бесконечная функция" - аж уши резануло. Дальше не смотрел. Бесит такое безответственное отношения к терминам. Индусов с их ломаным английским приятнее слушать

    • @Igor245390
      @Igor245390 Před rokem

      ну и еще, сокет то открыл, а закрыть забыл

  • @vasyapyderskyi
    @vasyapyderskyi Před rokem +1

    ходячий гений + обясняет кАнкретно👍

  • @OldAlspb
    @OldAlspb Před 3 lety +5

    Отличная подача информации! Просто великолепно!

  • @user-os3bm7ig1u
    @user-os3bm7ig1u Před rokem +5

    Почему когда я отправляю сообщение У меня только высвечивается одно сообщение и всё И больше не отправляется ни на сервер ни на клиента

  • @Loki22883
    @Loki22883 Před rokem +3

    У меня возникла проблемка в коде... вродь всё так как надо но сообщение отправляется только раз а потом уже нет.

  • @DevilApprove
    @DevilApprove Před 2 lety +2

    Оооокей. Я не с первого видоса обычно подписываюсь на людей. Но мне тут понадобился питон, а ты довольно сжато и информативно объяснил, это подписка)

    • @DevilApprove
      @DevilApprove Před 2 lety

      А, и да... /n название канала ТОП (=

  • @_rukala_
    @_rukala_ Před rokem +1

    А можно через функцию send передавать html в браузер при подключении?

  • @erlanayapov1341
    @erlanayapov1341 Před rokem

    А можно ли с помощью этой библиотеки получить список url адресов который мы подключаемся через браузер?

  • @nifflyar
    @nifflyar Před 6 měsíci

    спасибо:)

  • @DI-xx4fe
    @DI-xx4fe Před 2 lety +1

    Самое лучшее объяснение когда я либо видел!! Спасибо! С меня подписк плюс рекомендация друзьям ;)

  • @danyatim4090
    @danyatim4090 Před 2 lety +3

    Немного не точно объяснил, а так нормально, вроде интересно и полезно

  • @user-pg8ry1tm3t
    @user-pg8ry1tm3t Před 10 měsíci

    Ну почему ж невозможна передача между клиентами?.. если у нас одноранговая p2p и мы используем протоколы доверия?.. или все равно идём взаимодействие между серверами?..

  • @user-go8te3ub3z
    @user-go8te3ub3z Před rokem

    Помог! Потому что мне через неделю сдавать курсовую с темой Работа с сетью и сокеты. Основы разработки приложений в Python

    • @PseudoDev
      @PseudoDev  Před rokem

      Ооо, друг, удачной сдачи ✊

    • @user-go8te3ub3z
      @user-go8te3ub3z Před rokem

      @@PseudoDev Спасибо!

    • @user-go8te3ub3z
      @user-go8te3ub3z Před rokem

      @@PseudoDev Получилось запустить, а то я сначала только сервер запускал, а про клиента забывал и коннекта не было 🤣, даже на форумы уже полез смотреть, какие порты у меня не заняты

  • @user-ou2xv2qe8g
    @user-ou2xv2qe8g Před 3 lety +2

    Да, именно такая подача самое то для меня. Спасибо.

  • @user-wh8os9ht2h
    @user-wh8os9ht2h Před 3 lety +2

    Здравствуйте а можно ли с вами связаться как то помимо ютуба? У меня есть несколько вопросов по удалённому доступу но у меня очень мало опыта в программировании))

    • @PseudoDev
      @PseudoDev  Před 3 lety +1

      Да конечно. В описании есть ссылка на группу в VK, можете написать туда

  • @wowlikon
    @wowlikon Před rokem +1

    Можно ли сделать через sockets прямое соединение без статичных ip. Например кинуть запрос на сервер со статичным ip, например отправить число, затем другой пользователь отправляет на этот-же сервер такое-же число и сервер в ответ отправит ip и port первого юзера?

    • @wowlikon
      @wowlikon Před rokem +1

      И для работы каждая из python программ будет являться и сервером на одном порте, и клиентом на следующем.

  • @prize3168
    @prize3168 Před rokem +1

    Почему последний код из видео работает только один раз?

  • @tryh4ckm3
    @tryh4ckm3 Před rokem +3

    Можно вопрос? Почему чат работает только на 2 сообщения? (дальше просто не дает печатать)

    • @shadymindyt
      @shadymindyt Před 22 dny

      1024 выставил потому что

  • @benkubbb785
    @benkubbb785 Před 2 lety +1

    надо было уточнить зачем encoding utf-8 делать. Как я прочел чтоб передать данные через сокет нам нужны байты

  • @benandrew7390
    @benandrew7390 Před 3 lety +4

    Очень годно вещаешь!

  • @user-ls9iq7ls9b
    @user-ls9iq7ls9b Před 2 lety +1

    Толковый видос,Спасибо.

  • @user-oi2if9lq6r
    @user-oi2if9lq6r Před 3 lety +3

    Хороший канал, удачи в продвижении!)

  • @user-ul4uv6xi7e
    @user-ul4uv6xi7e Před 2 lety

    а ты хорош, продолжай в том же духе, успехов!

  • @akoshpython4938
    @akoshpython4938 Před 3 lety +2

    Почему в этой программе можно писать только 2 раза? Тогда надо писать в программе по порядку, иначе не получится.

  • @user-os3bm7ig1u
    @user-os3bm7ig1u Před rokem

    Ещё как мне можно сделать так чтобы сервер можно было подключаться с другого компьютера или вообще с другой точки мира где есть интернет

  • @secretplayer.r72
    @secretplayer.r72 Před rokem

    Здравствуйте, можно ли таким образом переработать инфы с одного тела на другой ?) Жду вашего ответа или видео на этом теме ✌️
    СПАСИБО что отвлеклись

    • @fugas6258
      @fugas6258 Před rokem

      Объясни лучше что ты хочешь сделать

    • @secretplayer.r72
      @secretplayer.r72 Před rokem

      @@fugas6258 ну смотрите как передавать изображение(из камеры) от одного телефона на другой телефон. Ну так типо можно сделать?🤜🤛
      Просто как получить доступ к камере? 🥺😢

    • @secretplayer.r72
      @secretplayer.r72 Před rokem

      @@fugas6258 научите как с помощью питона получить доступ к камере и транслировать на другой экран
      У меня pydroid3
      Пасиба заранее

    • @fugas6258
      @fugas6258 Před rokem

      @@secretplayer.r72 ну во первых тебе нужна библиотека которая называется сокет. Она нужна чтоб в режиме реального времени передавать какие либо сигналы. Кстати для создания онлайн чатов тоже сокет юзают. Короче сокет тебе нужен чтоб в онлайне видос как то передавать. Затем нужна какая нибудь интерфейсная либа например нумпи, пил и т д. Ещё пару либ и осталось одно дело. Поднять сервер где нибудь на VPS. Потом с клиента подключись к серверу и отправь фрагменты ролика в байтах на сервак. Сервак их примет и направит на то устройство на котором надо будет транслировать. На этом же устройстве тоже надо подключиться к серваку. Соединения будут по протоколу ws/wss

    • @secretplayer.r72
      @secretplayer.r72 Před rokem

      @@fugas6258 но я вообще не знаю что такое сокет т.д. я вообще ничего не знаю на языке программирования, может сами снимете видос на этом теме?)

  • @user-os3bm7ig1u
    @user-os3bm7ig1u Před rokem

    Ещё можешь пожалуйста оставить код под видео очень нужно

  • @nursultankurmanbekov800
    @nursultankurmanbekov800 Před 3 lety +5

    Годный контент

  • @user-ei9yz6vm4t
    @user-ei9yz6vm4t Před 3 lety +2

    Класно, я теку!)

  • @mcbarashek7457
    @mcbarashek7457 Před rokem

    у меня проблема я все сделал но у меня ошибка что конечный компутер отвергает запрос на подключение .Памоги плз

  • @gleburfin228
    @gleburfin228 Před 2 lety +1

    огромное вам спасибо!!!

  • @akexsnov
    @akexsnov Před rokem

    Супер! Благодарю.

  • @VINPSPORT
    @VINPSPORT Před 3 lety +3

    А если включить Wireshark то можно наглядно увидеть все это)

    • @PseudoDev
      @PseudoDev  Před 3 lety +4

      Воу, звучит как прекрасная тема для ролика)
      Спасибо за полезный комментарий

    • @azat3724
      @azat3724 Před 2 lety

      @@PseudoDev и где же ролик?

    • @kurrovsky
      @kurrovsky Před 2 lety +1

      @@azat3724 звучит - не значит что видео обязательно должно быть записано)))

  • @user-oo3ol7qx5z
    @user-oo3ol7qx5z Před 4 měsíci

    а как обнулять пакет если я например выделил линию для общения всего 128 байт ?

    • @user-oo3ol7qx5z
      @user-oo3ol7qx5z Před 4 měsíci

      когда я ввожу 2-3 сообщения у меня просто всё виснет

  • @VS-le2ep
    @VS-le2ep Před 4 měsíci

    Вынесите user, address = server.accept() из цикла, чтобы не ограничивалось обменом 1 сообщением

  • @ccode8194
    @ccode8194 Před rokem

    Как исправить soket.error [err 111] в подключении отказано

  • @Davlatjon_trader
    @Davlatjon_trader Před 11 měsíci +1

    4:22

  • @user-ei9yz6vm4t
    @user-ei9yz6vm4t Před 3 lety +2

    А если хочеш разные устройства использовать? Нужно задать сетевой интернет адрес?

    • @PseudoDev
      @PseudoDev  Před 3 lety +1

      Завтра в 16:00 будет новый ролик. В нём будет ответ на ваш вопрос)

    • @everyone-nobody777
      @everyone-nobody777 Před rokem

      ip удалённого сервера вместо "localhost" или "127.0.0.1" насколько понимаю нужно использовать. Но к удалённому серверу сначала надо подключиться, можно по ssh.

  • @yelenapanasenko7570
    @yelenapanasenko7570 Před 2 lety

    Класс!

  • @monsterapple6234
    @monsterapple6234 Před 3 měsíci

    Ничего не работает пишет в клиенте что ошибка в третьей строчке

  • @AntonSN83
    @AntonSN83 Před 2 lety

    Ммм, годнота, СПС!

  • @nursultankurmanbekov800
    @nursultankurmanbekov800 Před 3 lety +2

    Красава так держать

  • @DimaFyodorov
    @DimaFyodorov Před 2 lety +1

    у меня код такой но нифига со стороны клиента только одно сообщение а с хоста не могу писать наверное дело в том что Пайтон 3

    • @justuschart
      @justuschart Před 2 lety

      Нет

    • @justuschart
      @justuschart Před 2 lety

      import socket
      server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
      server.bind(('127.0.0.1', 8080))
      server.listen()
      while True:
      user, adress = server.accept()
      while True:
      user.send(input().encode('utf-8'))
      data = user.recv(1024)
      print(data.decode('utf-8'))

    • @justuschart
      @justuschart Před 2 lety +2

      Дело в том, что автор завел функцию принятия запроса в бесконечный цикл. Ты не можешь отправить 3 сообщение лишь по той причине, что сервер ожидает подключение ещё одного запроса.

  • @user-tx3mt1zi2d
    @user-tx3mt1zi2d Před 4 měsíci

    ты брайн мапс)?

  • @ytilizator24
    @ytilizator24 Před rokem

    Отличная подача, дякую

  • @goodzone5321
    @goodzone5321 Před rokem +1

    Не работает, тупо один раз туда сюда передает и завешивается, пробовал и с винды и с линукс сервера...

  • @DioBrando-os6ex
    @DioBrando-os6ex Před rokem

    Вроде всё правильно написал, а на сервер писать могу, но с клиента нет

  • @archgeek161
    @archgeek161 Před 2 lety +1

    класс!!! не мог найти толковый урок один был вообще на 3 часа короче ТЫ ЛУЧШИЙ!!!!!!

  • @Sergiypsm
    @Sergiypsm Před rokem

    У меня после обмена парой сообщений зависание

  • @AdmiralUshakovvv
    @AdmiralUshakovvv Před 3 lety +1

    Traceback (most recent call last):
    File "server.py", line 4, in
    server.bind(("127.0.0.1", 12345))
    OSError: [Errno 98] Address already in use
    что то не так с адресом?

    • @PseudoDev
      @PseudoDev  Před 3 lety +1

      Возможно здесь вы сможете найти решение на свой вопрос - stackoverflow.com/questions/6380057/python-binding-socket-address-already-in-use

    • @Kazilsky
      @Kazilsky Před 2 lety +1

      Порт поменяй

    • @Kazilsky
      @Kazilsky Před 2 lety

      Там говорит адрес используеться

  • @comachine
    @comachine Před 2 lety +1

    С учётом того, что почти всегда когда я беру какие-то коды с инета чьи-то, у меня вылетают всякие ошибки, я пиздец как рад, что с первого раза я увидел надпись connect

  • @Firadger20212
    @Firadger20212 Před rokem

    У меня никак не получаются твои действия. Я пользуюсь программой PyCharm. Файлы создаются не питона, а этой программы. Какой программой ты пользуешься?

    • @PseudoDev
      @PseudoDev  Před rokem

      Я использую VS Code, но модуль socket должен быть и корректно работать вне зависимости от среды в любом интерпретаторе Python.

  • @user-ox8sn2ic3x
    @user-ox8sn2ic3x Před 2 lety +1

    Автор: *Объясняет*
    Что-то: *Случается*
    Автор: Ну об этом как-то потом....

  • @tanitapak4839
    @tanitapak4839 Před rokem

    кто ты войн?!

  • @merchant_merarmy_1300
    @merchant_merarmy_1300 Před 2 lety +1

    Вот сука, все объясняют, но ты лучше всех!

  • @aglasiona7012
    @aglasiona7012 Před rokem

    круть

  • @webba1065
    @webba1065 Před rokem

    яиогу только один послать и принятью и все .. потом ничего

  • @logcom482
    @logcom482 Před 2 lety

    Какой питон простой в сравнению с С 😪🤧🥺

  • @rolton6307
    @rolton6307 Před 2 lety

    а почему мне выводит ошибку на import socket

    • @PseudoDev
      @PseudoDev  Před 2 lety

      Скорее всего, у вас какие-то проблему с обнаружением модулей, попробуйте поискать какие-то решения по этому вопросу в интернете

    • @rolton6307
      @rolton6307 Před 2 lety

      @@PseudoDev я весь гугл посмотрел по этому вопросу и ничего не нашёл, а прикол в том что все остальные модули работают

  • @iiavuk631
    @iiavuk631 Před rokem

    Посмотри отличие функции от классов.

  • @podolskshepchinka
    @podolskshepchinka Před 3 lety

    бесконечная функция

  • @FXUNDPLXGG
    @FXUNDPLXGG Před 2 lety +5

    Казалось бы причём здесь Украина

  • @HINCO38
    @HINCO38 Před rokem

    Бесконечная функция, нот бэд. Скопипастил где-то код, не разобрался и тут сидит умничает.

  • @vadimboiko7115
    @vadimboiko7115 Před rokem +1

    И все зависло после первой фразы!

  • @SashaGun_GD
    @SashaGun_GD Před 2 lety

    4:22

  • @exe2023
    @exe2023 Před 3 lety

    4:22