در این مطلب، ویدئو آموزش سوکت ها با پایتون 3 قسمت 1 – ارسال و دریافت داده با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 00:14:27
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:00,650 –> 00:00:02,550
چه اتفاقی برای همه می افتد و
2
00:00:02,550 –> 00:00:06,299
به سوکت با سری آموزش پایتون خوش آمدید
3
00:00:06,299 –> 00:00:08,460
در این ویدیو ما
4
00:00:08,460 –> 00:00:10,800
با سوکت ها کار می کنیم بنابراین چیزهای زیادی
5
00:00:10,800 –> 00:00:12,570
برای پوشش دادن داریم، بنابراین بیایید وارد آن شویم تا
6
00:00:12,570 –> 00:00:15,210
من یک سرور نقطه pi داشته باشم و یک کلاینت dot pi
7
00:00:15,210 –> 00:00:17,760
قبلا ایجاد شده است، بنابراین اگر این کار را انجام نداده اید،
8
00:00:17,760 –> 00:00:19,199
احتمالاً نباید پیش برویم
9
00:00:19,199 –> 00:00:21,210
و دو فایل بسازیم و
10
00:00:21,210 –> 00:00:25,920
در سرور dot pi شروع به
11
00:00:25,920 –> 00:00:28,260
کار می کنیم، بنابراین برای شروع، سوکت را وارد می کنیم. اکنون
12
00:00:28,260 –> 00:00:29,490
سوکت بخشی از کتابخانههای استاندارد شماست،
13
00:00:29,490 –> 00:00:31,500
بنابراین نیازی به نصب
14
00:00:31,500 –> 00:00:33,420
آن یا چیزی شبیه به آن ندارید،
15
00:00:33,420 –> 00:00:36,180
اکنون آن را دارید، اکنون کاری که میخواهیم انجام دهیم این است
16
00:00:36,180 –> 00:00:40,110
که شی سوکت خود را تعریف کنیم تا برابر سوکت نقطه
17
00:00:40,110 –> 00:00:45,149
سوکت باشد و نوع خانواده سوکتها
18
00:00:45,149 –> 00:00:48,539
چشم AF است. net و سپس نوع واقعی
19
00:00:48,539 –> 00:00:51,500
سوکت سوکت دات سوک
20
00:00:51,500 –> 00:00:55,710
استریم خواهد بود، حالا یک فی نت مربوط به ipv4
21
00:00:55,710 –> 00:01:00,000
و سوک استریم با TCP مطابقت دارد، بنابراین
22
00:01:00,000 –> 00:01:02,789
این یک سوکت استریم خواهد بود و اگر
23
00:01:02,789 –> 00:01:05,400
کسی میداند که چه شبکهای مانند این است که چرا به آن میگویند.
24
00:01:05,400 –> 00:01:06,960
فی نت مثل چرا
25
00:01:06,960 –> 00:01:09,770
نمی گوییم socket dot من ipv4
26
00:01:09,770 –> 00:01:12,869
le را نمی دانم من می دانم که در زیر واقعاً کنجکاو هستم، بنابراین به
27
00:01:12,869 –> 00:01:15,420
هر حال آن چیزی است که هست، بنابراین
28
00:01:15,420 –> 00:01:17,820
شی سوکت ما است، اکنون آنچه می خواهیم انجام دهیم این است
29
00:01:17,820 –> 00:01:19,920
که به آن سوکت متصل شویم تا اتصال نقطه ای باشد
30
00:01:19,920 –> 00:01:22,470
و می خواهیم آن را به یک تاپل وصل کنیم
31
00:01:22,470 –> 00:01:24,360
که گاهی اوقات این موضوع متفاوت است اما
32
00:01:24,360 –> 00:01:26,250
به هر حال تاپل در این مورد
33
00:01:26,250 –> 00:01:28,890
به دلیل نوع سوکت، یک IP و
34
00:01:28,890 –> 00:01:32,549
یک پورت خواهد بود، اکنون این سرور ماست، بنابراین ما در
35
00:01:32,549 –> 00:01:34,140
واقع سرور را
36
00:01:34,140 –> 00:01:35,490
روی همان دستگاهی میزبانی می کنیم که کد
37
00:01:35,490 –> 00:01:37,829
آن را داریم، بنابراین می خواهیم متصل کنیم. به سوکت،
38
00:01:37,829 –> 00:01:39,750
نام هاست را دریافت کنید، بنابراین هر چه نام میزبان
39
00:01:39,750 –> 00:01:42,960
اساساً لوکال هاست باشد و سپس پورتی
40
00:01:42,960 –> 00:01:45,720
که می خواهیم با یک دو سه چهار
41
00:01:45,720 –> 00:01:47,729
که می توانید با هر
42
00:01:47,729 –> 00:01:49,920
پورت تقریباً چهار رقمی بروید، ارقام پایین
43
00:01:49,920 –> 00:01:52,049
معمولاً قبلاً
44
00:01:52,049 –> 00:01:53,610
توسط برنامه دیگری اشغال شده است. و شما فقط می
45
00:01:53,610 –> 00:01:55,560
خواهید روی انگشتان پا بگذارید و به احتمال زیاد
46
00:01:55,560 –> 00:01:59,939
آنها می خواهند روی انگشتان شما پا بگذارند، بنابراین
47
00:01:59,939 –> 00:02:02,219
هنگامی که آن سوکت را بستیم، اجازه دهید به
48
00:02:02,219 –> 00:02:04,140
طور خلاصه به طور خلاصه صحبت کنیم که یک سوکت چیست،
49
00:02:04,140 –> 00:02:08,538
بنابراین یک سوکت به طور کلی فقط نقطه پایانی
50
00:02:08,538 –> 00:02:10,318
شماست. دوباره مانند دو
51
00:02:10,318 –> 00:02:11,520
نقطه پایانی سمت راست t خواهد بود o ارتباطی
52
00:02:11,520 –> 00:02:13,840
داشته باشید که فقط انتهای
53
00:02:13,840 –> 00:02:16,510
آن است که داده ها را دریافت می کند، بنابراین با سوکتی که
54
00:02:16,510 –> 00:02:19,120
ارسال می کنید، داده دریافت می کنید، بنابراین سوکت
55
00:02:19,120 –> 00:02:21,099
خود ارتباطی نیست،
56
00:02:21,099 –> 00:02:23,319
فقط نقطه پایانی است که مانند دریافت،
57
00:02:23,319 –> 00:02:24,550
ارتباط در آن نقطه
58
00:02:24,550 –> 00:02:27,760
پایانی در یک IP قرار می گیرد و پورت، بنابراین ما
59
00:02:27,760 –> 00:02:30,370
آن سوکت را در بالای صفحه وصل می کنیم، اکنون کاری که می خواهیم
60
00:02:30,370 –> 00:02:33,099
انجام دهیم این است که نقطه گوش کنیم، این سرور
61
00:02:33,099 –> 00:02:34,420
ما است، ما می خواهیم چند اتصال
62
00:02:34,420 –> 00:02:35,739
به این سرور ایجاد کنیم، بنابراین سرور باید
63
00:02:35,739 –> 00:02:37,569
برای این اتصالات ورودی آماده شود
64
00:02:37,569 –> 00:02:40,599
و این سرور آماده می شود و یک
65
00:02:40,599 –> 00:02:43,060
صف پنج تایی بگذارید، بنابراین اگر
66
00:02:43,060 –> 00:02:44,530
تحت بار سنگینی باشد و مانند چندین
67
00:02:44,530 –> 00:02:46,660
اتصال آنقدر سریع وارد شود
68
00:02:46,660 –> 00:02:48,160
که نتواند به اندازه کافی سریع پاسخ دهد و آنها
69
00:02:48,160 –> 00:02:49,630
شروع به انباشتن کنند، یک صف
70
00:02:49,630 –> 00:02:52,660
پنج تایی خواهیم داشت که باید بیش از اندازه کافی باشد.
71
00:02:52,660 –> 00:02:54,549
اهداف ما، پس آنچه که میخواهیم بگوییم این است که
72
00:02:54,549 –> 00:02:56,140
اکنون اساساً
73
00:02:56,140 –> 00:02:58,269
برای همیشه به اتصالات خود گوش میدهیم و
74
00:02:58,269 –> 00:03:00,340
اگر یکی را دریافت کنیم، سوکت مشتری را میگوییم
75
00:03:00,340 –> 00:03:04,629
و سپس آدرس را برابر با نقطه
76
00:03:04,629 –> 00:03:07,239
میکنیم، با این تفاوت که هر کسی وصل شود، ما خوشحالیم. برای دیدن
77
00:03:07,239 –> 00:03:09,700
و ما به شما متصل می شویم و سپس
78
00:03:09,700 –> 00:03:11,560
شی سوکت کلاینت
79
00:03:11,560 –> 00:03:13,690
را در این سوکت مشتری متغیر ذخیره می کنیم و
80
00:03:13,690 –> 00:03:15,910
سپس آدرس این است که آنها از کجا می آیند،
81
00:03:15,910 –> 00:03:17,889
بنابراین اساساً مانند آدرس IP خواهد بود،
82
00:03:17,889 –> 00:03:21,280
بنابراین چه چیزی می توانیم این را بپذیریم.
83
00:03:21,280 –> 00:03:23,290
و سپس سوکت مشتری این فقط
84
00:03:23,290 –> 00:03:25,720
یک شی سوکت دیگر است که بسیار شبیه به این
85
00:03:25,720 –> 00:03:28,120
شی سوکت ما است، در اینجا می توانیم
86
00:03:28,120 –> 00:03:30,130
اطلاعاتی را به این سوکت ارسال کنیم، می توانیم این
87
00:03:30,130 –> 00:03:32,079
سوکت اطلاعاتی را دریافت کند همانطور که
88
00:03:32,079 –> 00:03:34,799
در نهایت در کلاینت پای توضیح
89
00:03:34,799 –> 00:03:37,599
خواهیم داد.
90
00:03:37,599 –> 00:03:39,880
بیایید فقط برخی از
91
00:03:39,880 –> 00:03:43,630
رشته های F اشکال زدایی کلی را چاپ کنیم، می خواهیم بگوییم که
92
00:03:43,630 –> 00:03:49,290
اتصال از آدرس برقرار شده است
93
00:03:49,290 –> 00:03:53,739
علامت تعجب
94
00:03:53,739 –> 00:03:56,950
زیرا این یک کار جدی است، بنابراین اکنون
95
00:03:56,950 –> 00:03:59,950
ما این کار را انجام می دهیم که یک سوکت سرویس گیرنده نقطه
96
00:03:59,950 –> 00:04:03,069
ارسال کنیم، بنابراین ما در واقع
97
00:04:03,069 –> 00:04:06,489
اطلاعات را به آن ارسال می کنیم. سوکت کلاینت که به نظر من
98
00:04:06,489 –> 00:04:07,840
عجیب است مانند
99
00:04:07,840 –> 00:04:09,639
سوکت کلاینت یک شی سوکت است اما مانند
100
00:04:09,639 –> 00:04:11,919
یک شی سوکت خارجی است بنابراین می خواهیم
101
00:04:11,919 –> 00:04:15,010
اطلاعاتی را به آن ارسال کنیم اما تقریباً
102
00:04:15,010 –> 00:04:16,478
احساس می کنم که نمی دانم اوه
103
00:04:16,478 –> 00:04:18,310
برای من منطقی تر خواهد بود اگر مانند ما ارسال نقطه را انجام
104
00:04:18,310 –> 00:04:21,700
دادیم و سپس از سوکت مشتری عبور می کردیم،
105
00:04:21,700 –> 00:04:23,919
این برای من عجیب است، اما به هر حال
106
00:04:23,919 –> 00:04:25,990
این مانند نسخه محلی ما از سوکت مشتری است،
107
00:04:25,990 –> 00:04:27,430
بنابراین برای ارسال آنها به آن مشتری، آنها را برای من ارسال می
108
00:04:27,430 –> 00:04:28,930
کنیم. دوباره می گوییم کلاینت
109
00:04:28,930 –> 00:04:31,810
socket dot چه چیزی را می خواهیم
110
00:04:31,810 –> 00:04:33,970
برای این شخص ارسال کنیم، بنابراین بایت هایی را می گوییم
111
00:04:33,970 –> 00:04:35,680
که شما نیز می توانید مانند یک رشته و
112
00:04:35,680 –> 00:04:38,110
سپس نقطه در کد یا هر چیز دیگری
113
00:04:38,110 –> 00:04:40,389
که در اینجا می گوییم به سرور خوش آمدید.
114
00:04:40,389 –> 00:04:44,199
پس اینها چه نوع بایتهایی
115
00:04:44,199 –> 00:04:47,530
هستند اینها بایتهای UTF utf-8 بایت هستند، بنابراین
116
00:04:47,530 –> 00:04:51,610
اکنون این تقریباً تنها کاری است که ما برای ارسال برخی اطلاعات باید انجام دهیم،
117
00:04:51,610 –> 00:04:53,889
بنابراین صرفه جویی می
118
00:04:53,889 –> 00:04:56,440
کنم که اکنون این برای استفاده معمولی کافی نیست،
119
00:04:56,440 –> 00:04:58,780
اما این یک نمونه اساسی است.
120
00:04:58,780 –> 00:05:00,849
از آنجایی که من میتوانستم این کار را انجام دهم، بنابراین اکنون میخواهیم
121
00:05:00,849 –> 00:05:03,520
روی نقطهای مشتری خود کار کنیم،
122
00:05:03,520 –> 00:05:05,530
بنابراین کلاینت بسیار شبیه به سرور است که
123
00:05:05,530 –> 00:05:07,330
دقیقاً از همان سوکت استفاده میکند، بنابراین من
124
00:05:07,330 –> 00:05:10,120
در واقع میخواهم آن
125
00:05:10,120 –> 00:05:13,419
اطلاعات را اکنون این سوکت را به جای
126
00:05:13,419 –> 00:05:16,990
اتصال کپی پیست کنم. در عوض آنچه که این سوکت واقعاً
127
00:05:16,990 –> 00:05:18,729
میخواهد انجام دهد این است که وصل شویم، بنابراین ما دوباره
128
00:05:18,729 –> 00:05:21,430
میگوییم s dot connect و سپس یک
129
00:05:21,430 –> 00:05:23,949
تاپلی از IP و پورتی که
130
00:05:23,949 –> 00:05:25,509
میخواهیم به آن وصل شویم را در این مورد ارسال میکنیم، اگر
131
00:05:25,509 –> 00:05:29,320
سوکت آن نام میزبان و آیپی
132
00:05:29,320 –> 00:05:31,990
همان یک دو سه چهار در حال حاضر اغلب
133
00:05:31,990 –> 00:05:34,570
در مورد کلاینت شما باشد. مانند راه دور
134
00:05:34,570 –> 00:05:36,520
برای سرور شما خواهد بود، در واقع
135
00:05:36,520 –> 00:05:39,520
روی یک دستگاه نخواهد بود، بنابراین با سوکتها
136
00:05:39,520 –> 00:05:42,159
میتوانید با و از برنامههای پایتون
137
00:05:42,159 –> 00:05:45,250
در همان دستگاه مانند
138
00:05:45,250 –> 00:05:47,770
مجموعهای از ماشینهای شبکه محلی یا حتی
139
00:05:47,770 –> 00:05:50,560
ماشینهای شبکه از راه دور ارتباط برقرار کنید، بنابراین این کار انجام
140
00:05:50,560 –> 00:05:52,090
نمیشود. در بیشتر موارد مهم
141
00:05:52,090 –> 00:05:53,710
نیست که احتمالاً از سوکت doc استفاده نمیکنید اما از
142
00:05:53,710 –> 00:05:55,840
نام میزبان یا حداقل
143
00:05:55,840 –> 00:05:57,669
همه مواردی که احتمالاً انجام
144
00:05:57,669 –> 00:05:59,409
نمیدهید و به یک IP عمومی واقعی
145
00:05:59,409 –> 00:06:02,580
یا چیزی شبیه به آن یا یک IP محلی متصل میشوید مهم نیست.
146
00:06:02,580 –> 00:06:04,870
اما در حال حاضر ما همه کارها را روی یک دستگاه انجام می دهیم
147
00:06:04,870 –> 00:06:06,520
تا همه بتوانند آن را دنبال
148
00:06:06,520 –> 00:06:12,030
کنند تا ارتباط خود را برقرار
149
00:06:12,030 –> 00:06:15,310
کنیم و بتوانیم کارمان را انجام دهیم، اما
150
00:06:15,310 –> 00:06:17,320
پیامی که برای ما ارسال شده است را می پذیریم،
151
00:06:17,320 –> 00:06:20,050
بنابراین پیامی را می گوییم برابر s نقطه
152
00:06:20,050 –> 00:06:24,039
R ec v4 دریافت و ما g هستیم onna دریافت
153
00:06:24,039 –> 00:06:27,070
و این بافر ما است، بنابراین این
154
00:06:27,070 –> 00:06:30,009
سوکت TCP را در اینجا به خاطر بسپارید، این یک جریان داده است،
155
00:06:30,009 –> 00:06:32,139
بنابراین شما باید یک جریان داشته باشید که باید
156
00:06:32,139 –> 00:06:37,210
تصمیم بگیرید که چه اندازه تکه های کوچک
157
00:06:37,210 –> 00:06:40,180
یا چند تکه داده چقدر است.
158
00:06:40,180 –> 00:06:43,120
میخواهید در یک زمان دریافت کنید،
159
00:06:43,120 –> 00:06:45,370
بنابراین در این مورد 1024
160
00:06:45,370 –> 00:06:47,650
به اندازه کافی بیشتر از Pig است، اما
161
00:06:47,650 –> 00:06:48,729
واقعاً بستگی به این دارد که چه کاری انجام
162
00:06:48,729 –> 00:06:50,470
میدهید اگر در حال ارسال فایلهای حجیم هستید
163
00:06:50,470 –> 00:06:52,389
، اندازه بافر بسیار کوچکی
164
00:06:52,389 –> 00:06:53,710
نمیخواهید، ممکن است چیزی کمی بخواهید.
165
00:06:53,710 –> 00:06:55,630
بزرگتر و سپس به
166
00:06:55,630 –> 00:06:57,160
برنامهای که میخواهید از آن استفاده
167
00:06:57,160 –> 00:06:59,199
کنید و مواردی که این مورد میتواند
168
00:06:59,199 –> 00:07:01,030
واقعاً سریع پیچیده شود نیز بستگی دارد، مثلاً
169
00:07:01,030 –> 00:07:02,530
اگر واقعاً به شبکهها و
170
00:07:02,530 –> 00:07:05,350
چیزهایی علاقه دارید که میتوانید مبلغ مناسبی به شما پرداخت شود.