در این مطلب، ویدئو آموزش شماره 7 Python Intermediate – سوکت ها و برنامه نویسی شبکه با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 00:12:34
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:00,420 –> 00:00:02,429
بچه ها به مهلت
2
00:00:02,429 –> 00:00:03,929
در سریال توریستی برای واسطه ها خوش آمدید
3
00:00:03,929 –> 00:00:05,670
در قسمت امروز در
4
00:00:05,670 –> 00:00:07,440
مورد سوکت ها صحبت می کنیم بنابراین وارد
5
00:00:07,440 –> 00:00:10,080
حوزه جدیدی از برنامه نویسی شبکه می
6
00:00:10,080 –> 00:00:12,090
شویم بنابراین در مورد نحوه ارسال داده
7
00:00:12,090 –> 00:00:14,790
از طریق شبکه صحبت می کنیم. برای تبادل اطلاعات
8
00:00:14,790 –> 00:00:17,220
نحوه ایجاد ارتباط بین کلاینت ها و
9
00:00:17,220 –> 00:00:18,750
سرورها، بنابراین این چیزی است که ما
10
00:00:18,750 –> 00:00:20,580
در حال حاضر در مورد آن صحبت می کنیم و اولین چیزی که
11
00:00:20,580 –> 00:00:22,350
باید بدانیم این است یا اولین چیزی
12
00:00:22,350 –> 00:00:24,150
که باید یاد بگیریم این است که چگونه
13
00:00:24,150 –> 00:00:26,160
با سوکت ها کار کنیم، پس بیایید پوشش دهیم اولین
14
00:00:26,160 –> 00:00:28,410
سوال مبنی بر اینکه سوکت اساساً
15
00:00:28,410 –> 00:00:30,660
سوکت چیست، فقط نقطه پایانی یک
16
00:00:30,660 –> 00:00:32,340
کانال ارتباطی است، بنابراین وقتی
17
00:00:32,340 –> 00:00:34,649
ارتباطی در یک شبکه دارید،
18
00:00:34,649 –> 00:00:36,870
همیشه یک نقطه پایان دارید یا در واقع
19
00:00:36,870 –> 00:00:39,329
دو نقطه پایان دارید و به این نقاط پایانی،
20
00:00:39,329 –> 00:00:41,879
سوکت می گویند. شما یک سرور دارید و
21
00:00:41,879 –> 00:00:43,680
یک کلاینت یا دو کلاینت مهم نیست
22
00:00:43,680 –> 00:00:46,500
اساساً دو سوکت که سعی می کنند مقداری داده را رد و
23
00:00:46,500 –> 00:00:48,629
بدل کنند، بنابراین سوکت ها
24
00:00:48,629 –> 00:00:50,190
اساساً فقط نقاط پایانی
25
00:00:50,190 –> 00:00:52,620
کانال های ارتباطی هستند که اکنون این
26
00:00:52,620 –> 00:00:55,620
ارتباطات یا داده های ارتباطی برقرار می شود. ممکن است
27
00:00:55,620 –> 00:00:57,600
در یک فرآیند
28
00:00:57,600 –> 00:00:59,609
اتفاق بیفتد یا در سراسر قارههای مختلف از
29
00:00:59,609 –> 00:01:02,219
طریق اینترنت اتفاق بیفتد، بنابراین سوکتها
30
00:01:02,219 –> 00:01:04,769
به شبکهای در خانه شما محدود نمیشوند، میتوانند
31
00:01:04,769 –> 00:01:08,010
برای اینترنت نیز استفاده شوند، به عنوان مثال، یک
32
00:01:08,010 –> 00:01:11,549
شبکه بسیار بزرگ در حال حاضر در پایتون، اگرچه
33
00:01:11,549 –> 00:01:13,860
ما تعداد زیادی داریم. از سطوح دسترسی مختلف
34
00:01:13,860 –> 00:01:16,320
وقتی صحبت از شبکه به میان می آید، بنابراین اگر
35
00:01:16,320 –> 00:01:17,580
با سوکت ها سر و کار داریم، همیشه
36
00:01:17,580 –> 00:01:19,939
با سطوح پایین
37
00:01:19,939 –> 00:01:22,350
اتصال سروکار داریم، می توانید بگویید، بنابراین
38
00:01:22,350 –> 00:01:24,869
پروتکل اتصال گرا TCP و
39
00:01:24,869 –> 00:01:26,670
پروتکل اتصال گرا
40
00:01:26,670 –> 00:01:27,689
پروتکل بدون اتصال را داریم، متأسفیم
41
00:01:27,689 –> 00:01:31,619
UDP. برای شما یا اگر میخواهید
42
00:01:31,619 –> 00:01:35,579
از لایههای سطح بالا یا بالاتر
43
00:01:35,579 –> 00:01:37,320
استفاده کنید، باید از
44
00:01:37,320 –> 00:01:41,130
برنامههای واقعی مانند FTP HTTP استفاده کنیم و
45
00:01:41,130 –> 00:01:42,360
علامت تفاوت ماژولهای مختلفی است
46
00:01:42,360 –> 00:01:44,850
که
47
00:01:44,850 –> 00:01:46,799
ما داریم زیرا روی لایه برنامهای
48
00:01:46,799 –> 00:01:49,770
که با TCP سر و کار داریم اجرا میشوند. و UDP و
49
00:01:49,770 –> 00:01:51,360
اگر مدل OSI را میشناسید روی لایه به اصطلاح حمل و نقل اجرا میشوند،
50
00:01:51,360 –> 00:01:55,470
بنابراین اساساً
51
00:01:55,470 –> 00:01:57,570
سوکتها چیست و چگونه و روی کدام
52
00:01:57,570 –> 00:02:00,630
لایه از آنها استفاده میکنیم و قبل از اینکه به آن دسترسی پیدا کنیم.
53
00:02:00,630 –> 00:02:02,310
در اینجا بیشتر وارد تئوری می شویم، اجازه دهید
54
00:02:02,310 –> 00:02:03,689
وارد کد شویم و ببینیم که چگونه با
55
00:02:03,689 –> 00:02:05,850
سوکت ها در پایتون کار کنیم، اکنون برای کار
56
00:02:05,850 –> 00:02:07,740
با سوکت ها در پایتون باید
57
00:02:07,740 –> 00:02:09,360
ابتدا ماژول سوکت را وارد کنیم، بنابراین ما به
58
00:02:09,360 –> 00:02:11,849
جلو می رویم و می گوییم سوکت واردات و اکنون
59
00:02:11,849 –> 00:02:13,560
داریم برای پاسخ به چهار سوال
60
00:02:13,560 –> 00:02:15,390
اول از همه، آیا ما از یک
61
00:02:15,390 –> 00:02:17,880
سوکت اینترنت استفاده می کنیم یا در سوکت یونیکس، بنابراین
62
00:02:17,880 –> 00:02:19,590
این در واقع بسیار آسان است زیرا
63
00:02:19,590 –> 00:02:21,599
در اینجا با سطح یونیکس سروکار
64
00:02:21,599 –> 00:02:23,250
نداریم، می خواهیم یک سوکت شبکه و یک
65
00:02:23,250 –> 00:02:24,840
سوکت اینترنت داشته باشیم، بنابراین انتخاب
66
00:02:24,840 –> 00:02:27,480
یک سایت اینترنتی مهم است
67
00:02:27,480 –> 00:02:28,890
زیرا وقتی سوکتی را تعریف می کنیم باید بگوییم
68
00:02:28,890 –> 00:02:31,410
چه نوع سوکتی می خواهیم،
69
00:02:31,410 –> 00:02:33,180
ل دوم این است که از چه نوع پروتکلی اس
70
00:02:33,180 –> 00:02:34,530
فاده می کنیم از TCP
71
00:02:34,530 –> 00:02:38,040
ا UDP TCP استفاده کنیم. اتصال گرا است
72
00:02:38,040 –> 00:02:40,709
و برای هر داده معقولی بهتر است، بنابراین
73
00:02:40,709 –> 00:02:44,160
اگر می خواهید همه داده ها ارسال
74
00:02:44,160 –> 00:02:45,360
و دریافت شوند،
75
00:02:45,360 –> 00:02:47,549
به TCP نیاز دارید اما البته
76
00:02:47,549 –> 00:02:49,980
کندتر از UDP است زیرا UDP شما
77
00:02:49,980 –> 00:02:51,959
با UDP دارید، خطر از دست دادن
78
00:02:51,959 –> 00:02:55,950
برخی از داده ها را دارید. اما UDP بسیار سریعتر است بنابراین f یا
79
00:02:55,950 –> 00:02:57,750
بازی های ویدیویی به عنوان مثال برای بازی های ویدیویی آنلاین
80
00:02:57,750 –> 00:03:00,330
UDP یا برای تماس های اسکایپ، UDP
81
00:03:00,330 –> 00:03:02,730
انتخاب بهتری است، اما اگر می خواهید
82
00:03:02,730 –> 00:03:04,709
اطلاعات بسیار دقیقی را انتقال دهید، شاید
83
00:03:04,709 –> 00:03:06,630
TCP یک انتخاب باشد، بنابراین در این مورد
84
00:03:06,630 –> 00:03:08,220
ما قصد داریم پیام ها را منتقل
85
00:03:08,220 –> 00:03:11,549
کنیم و ما اکنون از TCP استفاده
86
00:03:11,549 –> 00:03:14,519
می کنیم، سوال بعدی این است که از کدام IP استفاده کنیم،
87
00:03:14,519 –> 00:03:16,709
بنابراین به کدام IP وصل می شویم
88
00:03:16,709 –> 00:03:19,170
یا زمانی که
89
00:03:19,170 –> 00:03:22,950
میزبان خود هستیم یا کدام IP را می خواهیم میزبان یا سرور کنیم و کدام IP را می خواهیم داشته باشیم.
90
00:03:22,950 –> 00:03:25,440
سوال چهارم
91
00:03:25,440 –> 00:03:27,209
این است که از کدام پورت
92
00:03:27,209 –> 00:03:30,690
استفاده می کنیم آیا از پورت 3 3 3 3 استفاده
93
00:03:30,690 –> 00:03:35,430
می کنیم یا از tu-160 استفاده می کنیم البته
94
00:03:35,430 –> 00:03:37,560
باید مراقب پورت های رزرو شده
95
00:03:37,560 –> 00:03:39,930
و پورت استاندارد باشیم، بنابراین شاید پورت
96
00:03:39,930 –> 00:03:41,940
80 باشد. بهترین ایده نیست، زیرا
97
00:03:41,940 –> 00:03:44,730
معمولاً برای HTTP است، بنابراین ممکن است بخواهیم
98
00:03:44,730 –> 00:03:46,760
پورتی را انتخاب کنیم که در حال حاضر معمولاً
99
00:03:46,760 –> 00:03:49,980
برای کار با sock استفاده نمی شود، اولین چیزی
100
00:03:49,980 –> 00:03:51,540
است که باید یک سوکت ایجاد کنیم و این کار را
101
00:03:51,540 –> 00:03:53,700
با گفتن سوکت نقطه سوکت انجام
102
00:03:53,700 –> 00:03:56,880
می دهیم اول از همه باید دو چیز را پاس
103
00:03:56,880 –> 00:03:59,340
104
00:03:59,340 –> 00:04:02,400
کنیم میخواهید یک سوکت اینترنت داشته باشید، بنابراین
105
00:04:02,400 –> 00:04:07,280
میخواهیم بگوییم af underline eye net
106
00:04:07,280 –> 00:04:10,980
و سپس باید پروتکل را
107
00:04:10,980 –> 00:04:12,750
در این مورد مشخص کنیم، در این مورد از TCP استفاده میکنیم
108
00:04:12,750 –> 00:04:20,810
و TCP یک جریان سوکت نقطهای است
109
00:04:20,810 –> 00:04:22,430
که
110
00:04:22,430 –> 00:04:25,220
UDP به صورت sock خواهد بود. sock on line
111
00:04:25,220 –> 00:04:33,290
diagram بنابراین مانند پدر و این در حال
112
00:04:33,290 –> 00:04:36,590
حاضر فقط یک سوکت است که با TCP
113
00:04:36,590 –> 00:04:38,360
کار می کند و یک
114
00:04:38,360 –> 00:04:39,680
115
00:04:39,680 –> 00:04:41,810
116
00:04:41,810 –> 00:04:43,850
سوکت اینترنت است. برنامه دیگری
117
00:04:43,850 –> 00:04:45,530
را در جای دیگری روی یک پورت خاص اجرا
118
00:04:45,530 –> 00:04:47,510
کنید، ممکن است بخواهید با سوکت به این پورت متصل شوید،
119
00:04:47,510 –> 00:04:50,389
اما برای یادگیری نحوه
120
00:04:50,389 –> 00:04:51,800
کار سوکتها، سرور خود را در اینجا ایجاد میکنیم،
121
00:04:51,800 –> 00:04:53,510
بنابراین
122
00:04:53,510 –> 00:04:55,430
سوکت خود را میسازیم که به ورودی گوش میدهد. و
123
00:04:55,430 –> 00:04:56,990
سپس یک اسکریپت دوم پایتون را ایجاد می کنیم که
124
00:04:56,990 –> 00:04:59,540
یک کلاینت به
125
00:04:59,540 –> 00:05:03,139
آن سوکت وصل می شود، بنابراین کاری که بعد انجام می دهیم این است که از
126
00:05:03,139 –> 00:05:07,160
روش bind برای ارسال چند
127
00:05:07,160 –> 00:05:09,770
آدرس IP و پورتی که می خواهیم
128
00:05:09,770 –> 00:05:12,410
این سوکت را روی آن اجرا کنیم استفاده می کنیم. آدرس IP در
129
00:05:12,410 –> 00:05:14,270
این مورد بسیار ساده محلی آن است ost
130
00:05:14,270 –> 00:05:15,470
چون من این را روی دستگاه خودم اجرا می کنم،
131
00:05:15,470 –> 00:05:22,539
بنابراین یک امتیاز یک 127.0.0.1
132
00:05:22,539 –> 00:05:23,990
و پورت
133
00:05:23,990 –> 00:05:27,430
بیایید پنج پنج پنج پنج
134
00:05:27,430 –> 00:05:30,050
چیزی شبیه به آن را انتخاب کنیم حالا با روش بایت
135
00:05:30,050 –> 00:05:33,590
می گوییم که این همان داده ای است
136
00:05:33,590 –> 00:05:35,539
که ما سوکت یا دیس خود را می خواهیم.
137
00:05:35,539 –> 00:05:37,360
میزبانی است که میخواهیم آن را روی آن اجرا کنیم
138
00:05:37,360 –> 00:05:41,060
و البته پورت، بنابراین اکنون برای داشتن یک
139
00:05:41,060 –> 00:05:44,830
سرور، فقط میگوییم ass dot listen و
140
00:05:44,830 –> 00:05:47,840
این اساساً سوکت ما را در
141
00:05:47,840 –> 00:05:49,970
حالت گوش دادن قرار میدهد، بنابراین لیست
142
00:05:49,970 –> 00:05:52,880
روشن است و دائماً به اتصالات احتمالی گوش میدهد.
143
00:05:52,880 –> 00:05:55,250
یا هر کلاینتی که تلاش می کند
144
00:05:55,250 –> 00:05:57,500
وصل شود یا آیا اتفاقی در حال رخ دادن است و
145
00:05:57,500 –> 00:06:00,560
ما اکنون یک سوکت شنود داریم، اکنون
146
00:06:00,560 –> 00:06:01,880
کاری که می خواهیم انجام دهیم این است
147
00:06:01,880 –> 00:06:04,280
که یک آنتلوپ را اجرا می کنیم که اتصالات را می
148
00:06:04,280 –> 00:06:05,599
پذیرد، بنابراین می خواهیم
149
00:06:05,599 –> 00:06:11,380
بگوییم درست است و ما کلاینت و آدرس خود را می گوییم،
150
00:06:11,380 –> 00:06:14,660
بنابراین فقط این
151
00:06: