در این مطلب، ویدئو Selenium Webdriver – همه چیز در کشیدن و رها کردن با Python WebDriver با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 00:20:25
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:01,930 –> 00:00:04,980
[موسیقی]
2
00:00:06,710 –> 00:00:09,059
آنچه در یوتیوب در این ویدیو وجود دارد،
3
00:00:09,059 –> 00:00:11,099
ما چند مورد را پوشش می
4
00:00:11,099 –> 00:00:13,799
دهیم که در مورد کشیدن و رها کردن برای
5
00:00:13,799 –> 00:00:18,560
jQuery برای html5 برای HTML و
6
00:00:18,560 –> 00:00:21,300
هر چیز دیگری که نمی توانیم
7
00:00:21,300 –> 00:00:25,109
از طریق تماس های وب درایور بومی پوشش دهیم صحبت خواهیم کرد.
8
00:00:25,109 –> 00:00:28,140
در مورد نحوه استفاده از Sakuni که
9
00:00:28,140 –> 00:00:31,920
ابزار تشخیص تصویر
10
00:00:31,920 –> 00:00:33,630
برای انجام کشیدن و رها کردن است صحبت کنید که به شما امکان می دهد
11
00:00:33,630 –> 00:00:34,340
12
00:00:34,340 –> 00:00:38,280
در مرورگر و از دسکتاپ
13
00:00:38,280 –> 00:00:40,469
به مرورگر بکشید و رها کنید و در واقع
14
00:00:40,469 –> 00:00:44,760
تمام مثال ها را برای هر یک از آن
15
00:00:44,760 –> 00:00:47,250
موضوعات پوشش می دهد. ادامه دهید و با
16
00:00:47,250 –> 00:00:51,300
jQuery شروع کنید، اگر
17
00:00:51,300 –> 00:00:53,670
وبسایتی را آزمایش میکنید و
18
00:00:53,670 –> 00:00:55,980
اجزای قابل کشیدن آن با jQuery ساخته میشوند
19
00:00:55,980 –> 00:00:57,960
، خوش شانس هستید، زیرا میتوانید از
20
00:00:57,960 –> 00:01:00,890
توابع داخلی کشیدن و رها کردن
21
00:01:00,890 –> 00:01:03,830
وبدرایور استفاده کنید.
22
00:01:03,830 –> 00:01:06,299
دو گزینه وجود دارد که
23
00:01:06,299 –> 00:01:10,439
اگر اینجا را برای هر دو گزینه نگاه کنید، ما از زنجیرههای عمل استفاده میکنیم
24
00:01:10,439 –> 00:01:13,439
و از جهاتی بسیار شبیه به
25
00:01:13,439 –> 00:01:17,580
هم هستند، بنابراین زنجیرههای اکشن را از
26
00:01:17,580 –> 00:01:19,740
webdriver وارد میکنیم، آنها را به درایوری که
27
00:01:19,740 –> 00:01:23,430
در اینجا ایجاد کردهایم ارسال میکنیم و تماس میگیریم و میکشیم. و
28
00:01:23,430 –> 00:01:25,380
د rop بسیار ساده را به سمت راست وارد می کنیم
29
00:01:25,380 –> 00:01:28,829
که شیء جدیدی است که
30
00:01:28,829 –> 00:01:31,350
می خواهیم در صفحه بکشیم و سپس
31
00:01:31,350 –> 00:01:33,119
dropable را که
32
00:01:33,119 –> 00:01:36,540
شیئی است که می خواهیم
33
00:01:36,540 –> 00:01:39,570
شیء قابل کشیدن را به آن رها کنیم ادامه می دهیم و سپس تابع perform را فراخوانی می
34
00:01:39,570 –> 00:01:41,790
کنیم که ما به جلو می رویم
35
00:01:41,790 –> 00:01:45,479
و همه چیز را قبل از اجرای
36
00:01:45,479 –> 00:01:51,119
عملکرد اکنون اجرا می کنیم گزینه دو که همچنین
37
00:01:51,119 –> 00:01:55,590
کار می کند زیرا می توانید به صراحت
38
00:01:55,590 –> 00:01:58,229
تماس هایی را که از کشیدن و رها کردن استفاده می کنند زنجیره ای در پشت
39
00:01:58,229 –> 00:02:00,600
صحنه انجام دهید که کلیک کنید و نگه دارید و دوباره
40
00:02:00,600 –> 00:02:03,509
در قسمت قابل کشیدن پاس می دهید و سپس وارد می شوید.
41
00:02:03,509 –> 00:02:06,060
عنصری که میخواهید به آن منتقل شوید
42
00:02:06,060 –> 00:02:08,310
، قابلیت drop شماست و سپس
43
00:02:08,310 –> 00:02:11,730
باید آن را رها کنید تا
44
00:02:11,730 –> 00:02:12,960
آن را به
45
00:02:12,960 –> 00:02:15,300
droppable رها کنید و سپس اجرا را
46
00:02:15,300 –> 00:02:18,870
روی آن فراخوانی کنید، خیلی ساده است
47
00:02:18,870 –> 00:02:21,990
که با اجزای قابل کشیدن jQuery کار میکند، پس
48
00:02:21,990 –> 00:02:30,870
بیایید برویم جلوتر و این را اجرا کنید و
49
00:02:30,870 –> 00:02:34,530
به صفحه jquery می رود که در آن
50
00:02:34,530 –> 00:02:37,320
این دو لیست با استفاده از jquery ایجاد می شوند،
51
00:02:37,320 –> 00:02:42,120
بنابراین آنچه که در اینجا داریم دو لیست است
52
00:02:42,120 –> 00:02:44,880
که قابل مرتب سازی است یک مرتب سازی دو، بنابراین
53
00:02:44,880 –> 00:02:48,210
کاری که انجام داد کشیدن f است. اول مورد را
54
00:02:48,210 –> 00:02:50,850
روی آن بکشید و سپس مورد دوم را
55
00:02:50,850 –> 00:02:55,520
با استفاده از دو گزینه متفاوتی که
56
00:02:55,520 –> 00:03:00,720
در اینجا داشتیم بکشید، بنابراین این یکی از راههای کشیدن
57
00:03:00,720 –> 00:03:03,210
و رها کردن با jQuery است، حالا
58
00:03:03,210 –> 00:03:06,030
اگر
59
00:03:06,030 –> 00:03:08,820
من واقعاً به این وبسایت بروم، در وبسایت دیگری کار نخواهد کرد.
60
00:03:08,820 –> 00:03:11,690
همان کاری را انجام دهید که من سعی می کنم
61
00:03:11,690 –> 00:03:14,790
برای این مورد در انتخابگر پاس کنم و سعی می کنم
62
00:03:14,790 –> 00:03:16,590
آن را بکشم و به این سطل بکشم
63
00:03:16,590 –> 00:03:18,630
، در واقع کار نمی کند زیرا
64
00:03:18,630 –> 00:03:23,790
این صفحه با html5 ساخته شده است که
65
00:03:23,790 –> 00:03:27,300
متأسفانه روی آن کار نمی کند. بنابراین ما باید
66
00:03:27,300 –> 00:03:30,360
کار دیگری انجام دهیم و چیز
67
00:03:30,360 –> 00:03:32,130
دیگری در واقع کمی پیچیدهتر است،
68
00:03:32,130 –> 00:03:34,890
اما هنوز بهتر از استفاده از تشخیص تصویر است،
69
00:03:34,890 –> 00:03:37,560
زیرا هنوز به نوعی
70
00:03:37,560 –> 00:03:39,270
از توابع سلنیوم طبیعی عبور میکند
71
00:03:39,270 –> 00:03:42,000
و
72
00:03:42,000 –> 00:03:44,010
محدود نمیشود، در واقع هیچ محدودیتی
73
00:03:44,010 –> 00:03:48,090
برای این وجود ندارد. در حالی که وقتی تشخیص تصویر را اجرا می کنید
74
00:03:48,090 –> 00:03:49,590
75
00:03:49,590 –> 00:03:51,570
محدودیت هایی وجود دارد و من در واقع
76
00:03:51,570 –> 00:03:53,640
وقتی در مورد امنیت صحبت می کنیم این محدودیت ها را مرور خواهم کرد،
77
00:03:53,640 –> 00:03:58,980
بنابراین در اینجا ما به دو
78
00:03:58,980 –> 00:04:01,160
فایل مختلف نیاز داریم که این فایل ها
79
00:04:01,160 –> 00:04:04,800
در Stack O ارائه شوند. verflow و Stack Exchange و
80
00:04:04,800 –> 00:04:08,520
من یک پیوند خواهم داشت در واقع اگر به
81
00:04:08,520 –> 00:04:10,350
github من بروید و به این فایل ها نگاه کنید
82
00:04:10,350 –> 00:04:13,140
، پیوندی وجود خواهد داشت که چه کسی آنها را ایجاد کرده است،
83
00:04:13,140 –> 00:04:16,140
بنابراین رایان توماس متاسفم، من
84
00:04:16,140 –> 00:04:19,890
سعی نمی کنم این را تلفظ کنم. ایجاد شده و
85
00:04:19,890 –> 00:04:22,800
این کمک کننده کشیدن و رها کردن است که
86
00:04:22,800 –> 00:04:25,440
فایل اصلی است که در واقع کشیدن
87
00:04:25,440 –> 00:04:27,840
و رها کردن صفحه را انجام می دهد، بنابراین راه حل
88
00:04:27,840 –> 00:04:30,270
html5 در واقع استفاده از جاوا اسکریپت
89
00:04:30,270 –> 00:04:33,480
برای انجام کشیدن و رها کردن است و
90
00:04:33,480 –> 00:04:36,600
این جاوا اسکریپت است که در واقع می تواند
91
00:04:36,600 –> 00:04:42,000
کشیدن و رها کردن را در صفحه html5 انجام دهید و سپس
92
00:04:42,000 –> 00:04:44,820
به یک اسکریپت دیگر نیاز داریم زیرا این اسکریپت
93
00:04:44,820 –> 00:04:48,479
به jQuery متکی است بنابراین ما به اسکریپت دیگری نیاز داریم
94
00:04:48,479 –> 00:04:50,040
که در واقع قادر به
95
00:04:50,040 –> 00:04:52,470
تزریق jQuery به صفحه باشد، بنابراین این
96
00:04:52,470 –> 00:04:56,820
قطعه کد دیگری است که
97
00:04:56,820 –> 00:04:59,850
در Stack Exchange پیدا شد و این قطعه
98
00:04:59,850 –> 00:05:04,440
میتواند اساساً jQuery را به
99
00:05:04,440 –> 00:05:07,020
هر صفحهای که اکنون در آن هستید تزریق
100
00:05:07,020 –> 00:05:10,380
کند، اگر به این نگاه کنید،
101
00:05:10,380 –> 00:05:12,720
jQuery یا jQuery را تزریق نمیکند،
102
00:05:12,720 –> 00:05:15,060
قبلاً در آن صفحه خاص یافت شده
103
00:05:15,060 –> 00:05:17,310
است که در واقع خوب است، زیرا اگر شما
104
00:05:17,310 –> 00:05:19,830
بودید اگر وب سایتی که شما در حال آزمایش
105
00:05:19,830 –> 00:05:21,660
آن هستید به نسخه خاصی از jQuery متکی است
106
00:05:21,660 –> 00:05:25,110
و آن نسخه در حال حاضر وجود
107
00:05:25,110 –> 00:05:29,060
دارد، اگر بخواهید از نسخه دیگری از jQuery استفاده کنید، به شما اجازه نمی دهد مواردی را
108
00:05:29,060 –> 00:05:31,919
که به طور بالقوه می تواند
109
00:05:31,919 –> 00:05:34,470
عملکرد یا برخی از
110
00:05:34,470 –> 00:05:37,620
عملکردهای صفحه را خراب کند، بازنویسی کنید.
111
00:05:37,620 –> 00:05:39,720
این
112
00:05:39,720 –> 00:05:45,210
صفحه برای رفتن با چه چیزی طراحی شده است، بنابراین
113
00:05:45,210 –> 00:05:47,340
این دو فایل در github قرار می گیرند یا
114
00:05:47,340 –> 00:05:53,010
می توانید خودتان آنها را دانلود کنید، من در
115
00:05:53,010 –> 00:05:54,750
واقع لینک ها را در
116
00:05:54,750 –> 00:05:57,180
توضیحات می گذارم تا شما بچه ها مستقیماً
117
00:05:57,180 –> 00:06:03,600
به این منابع بروید و منبع را دریافت کنید فایل را از
118
00:06:03,600 –> 00:06:06,050
آنجا یا می توانید از github من دریافت کنید،
119
00:06:06,050 –> 00:06:12,350
بنابراین حالا اینجا چه کار کنیم، بنابراین من یک
120
00:06:12,350 –> 00:06:15,600
کلاس برای یک html5 ایجاد کردم
121
00:06:15,600 –> 00:06:18,390
و یک تابع برای کشیدن و رها کردن دارد، بنویسید
122
00:06:18,390 –> 00:06:20,130
که تابع از درایور استفاده می کند که
123
00:06:20,130 –> 00:06:22,310
عمدتاً ما به درایور نیاز داریم. برای
124
00:06:22,310 –> 00:06:26,250
اجرای یک اسکریپت مشکلی وجود ندارد و سپس ما
125
00:06:26,250 –> 00:06:29,789
در اینجا قابل کشیدن و رها کردن نیز داریم که
126
00:06:29,789 –> 00:06:30,870
اساساً
127
00:06:30,870 –> 00:06:33,360
رشتههای انتخابگر را که در
128
00:06:33,360 –> 00:06:35,689
رشتههای کند RJ ارسال
129
00:06:35,689 –> 00:06:38,959
میکنید، باید با فرمت jpg باشند، زیرا
130
00:06:38,959 –> 00:06:40,219
اگر به اینجا نگاه کنید w در حال ایجاد یک
131
00:06:40,219 –> 00:06:42,349
نظر برای کشیدن و رها کردن با استفاده از
132
00:06:42,349 –> 00:06:45,610
نحو jQuery درست است، بنابراین باید با
133
00:06:45,610 –> 00:06:49,549
برخی از jQuery مطابقت داشته باشد، باید بتواند
134
00:06:49,549 –> 00:06:52,849
آن انتخابگر را پردازش کند که شما به آن میدهید، بنابراین
135
00:06:52,849 –> 00:06:54,499
من یک لینک اینجا گذاشتم شما بچهها میتوانید
136
00:06:54,499 –> 00:06:57,759
jQuery را بررسی کنید. انتخابکنندههایی که میتوانید استفاده کنید،
137
00:06:57,759 –> 00:07:02,209
اما این به اندازه
138
00:07:02,209 –> 00:07:05,779
کد اصلی همهکاره نیست، اما همچنان میتواند طول بکشد،
139
00:07:05,779 –> 00:07:08,599
میتواند طیف گستردهای از انتخابگرهای مختلف را پشتیبانی کند،
140
00:07:08,599 –> 00:07:12,550
بنابراین
141
00:07:12,550 –> 00:07:15,739
محدودیتهای این هنوز بسیار کوچک است، اما
142
00:07:15,739 –> 00:07:17,629
هنوز محدودیتهایی وجود دارد که نمیتوانید
143
00:07:17,629 –> 00:07:20,719
از آنها استفاده کنید. برای مثال XPath کامل در این مورد،
144
00:07:20,719 –> 00:07:27,589
بنابراین کاری که ما در اینجا انجام می دهیم این است که قبل از
145
00:07:27,589 –> 00:07:30,079
ایجاد
146
00:07:30,079 –> 00:07:33,110
دستورمان، جی کوئری را به صفحه تزریق می
147
00:07:33,110 –> 00:07:35,269
کنیم و از توابع داخلی در اینجا برای
148
00:07:35,269 –> 00:07:38,599
بارگذاری jQuery استفاده می کنیم که درایوری را
149
00:07:38,599 –> 00:07:40,279
که از آن عبور می دهیم نیز می گیرد.
150
00:07:40,279 –> 00:07:43,279
تابع کشیدن و رها کردن و می توانید
151
00:07:43,279 –> 00:07:46,369
URL مربوط به jQuery را به عنوان مثال اگر
152
00:07:46,369 –> 00:07:47,509
به دلایلی می خواهید از نسخه دیگری از
153
00:07:47,509 –> 00:07:49,429
jQuery استفاده کنید، می توانید آن را
154
00:07:49,429 –> 00:07:53,449
وارد کنید، فقط می توانید URL مربوط
155
00:07:53,449 –> 00:07:55,099
به بوستون را به این تابع یا شما لغو کنید.
156
00:07:55,099 –> 00:08:00,589
می تواند ج این URL پیشفرض را آویزان کنید تا
157
00:08:00,589 –> 00:08:03,589
jQuery را در آنجا تزریق کنیم و فایلی را برای
158
00:08:03,589 –> 00:08:06,399
کمک کشیدن و رها کردن بخوانیم که این شخص
159
00:08:06,399 –> 00:08:12,199
درست است، آن را به عنوان یک رشته دریافت میکنیم و
160
00:08:12,199 –> 00:08:14,529
آن را به این متغیر اختصاص میدهیم و سپس
161
00:08:14,529 –> 00:08:21,110
یک دستور برای jQuery ایجاد میکنیم. بنابراین که
162
00:08:21,110 –> 00:08:22,699
در واقع کشیدن و رها کردن
163
00:08:22,699 –> 00:08:25,399
این کشیدن و رها کردن را شبیه سازی می کند تابعی است
164
00:08:25,399 –> 00:08:27,889
که از این اسکریپت
165
00:08:27,889 –> 00:08:31,759
166
00:08:31,759 –> 00:08:35,320
167
00:08:35,320 –> 00:08:41,860
می آید.
168
00:08:41,860 –> 00:08:44,080
بنابراین این همان چیزی است که میخواهیم بکشیم و
169
00:08:44,080 –> 00:08:46,090
سپس رها کردن جایی که
170
00:08:46,090 –> 00:08:49,420
میخواهیم آن را رها کنیم، اساساً چیزی است که
171
00:08:49,420 –> 00:08:52,500
برای اجرای اسکریپت در اینجا ارسال میکنیم، فقط یک رشته است
172
00:08:52,500 –> 00:08:55,150
که کل جاوا اسکریپت خواهد بود، بنابراین
173
00:08:55,150 –> 00:08:57,970
بیایید نگاهی به نحوه کارکرد این اسکریپت بیندازیم.
174
00:08:57,970 –> 00:09:03,150
حالا اگر به اینجا
175
00:09:03,150 –> 00:09:06,760
بروید از شناسه عناصر در آن صفحه استفاده می کنیم، اگر به اینجا بروید،
176
00:09:06,760 –> 00:09:10,510
همه این عناصر دارای شناسه هستند که من
177
00:09:10,510 –> 00:09:16,470
شناسه یک را دوباره بارگذاری کردم، بنابراین تگ هش یکی
178
00:09:16,470 –> 00:09:19,320
ترکیبی است برای جی کوئری برای یافتن این و
179
00:09:19,320 –> 00:09:23,020
سپس مقداری هش تگ به این معنی است
180
00:09:23,020 –> 00:09:26,230
که که ما به این عنصر
181
00:09:26,230 –> 00:09:32,110
توسط در این عنصر توسط ID و نگاه می کنیم بیایید به
182
00:09:32,110 –> 00:09:36,180
جلو برویم و این را اجرا کنیم ببینیم چه اتفاقی میافتد،
183
00:09:40,120 –> 00:09:44,510
اوه نتوانستم آن را یک ثانیه درایو کنم، اجازه
184
00:09:44,510 –> 00:09:47,170
دهید دوباره اجرا کنم،
185
00:09:50,370 –> 00:09:53,820
بنابراین ما میرویم در واقع اولین
186
00:09:53,820 –> 00:09:56,370
عنصر را برداشته و آن را منتقل کردیم، بنابراین این
187
00:09:56,370 –> 00:09:59,730
راه حلی است که میخواهید برای html5 استفاده کنید
188
00:09:59,730 –> 00:10:01,170
و با تشکر فراوان.