در این مطلب، ویدئو 30 Days of Python – روز 12 – Web Scraping Box Office $$ Numbers – Python TUTORIAL با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 1:01:41
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:00,000 –> 00:00:02,550
سلام، به روز دوازدهم خوش آمدید و این روز،
2
00:00:02,550 –> 00:00:05,970
ما وب سایت ها را برای استخراج داده ها خراش می دهیم،
3
00:00:05,970 –> 00:00:10,139
اکنون ممکن است
4
00:00:10,139 –> 00:00:12,570
با چیستی آن آشنا باشید، اما بدون شک
5
00:00:12,570 –> 00:00:15,000
اکنون از نتیجه آن استفاده کرده اید، اگر به
6
00:00:15,000 –> 00:00:17,760
چیزی مانند گوگل نگاه کنید، در واقع
7
00:00:17,760 –> 00:00:20,220
داده ها را خراش می دهد. از وبسایتها،
8
00:00:20,220 –> 00:00:22,859
وبسایتها دادههای جالبی را
9
00:00:22,859 –> 00:00:25,980
میگیرند یا میخزند که وبسایت دادههایی را استخراج میکند که
10
00:00:25,980 –> 00:00:28,859
برایش جالب است و سپس آن را
11
00:00:28,859 –> 00:00:30,570
به یک موتور جستجو تبدیل میکند که کاری است
12
00:00:30,570 –> 00:00:32,940
که Google انجام داده و به خوبی انجام داده است
13
00:00:32,940 –> 00:00:35,940
و هیچکس حتی به آنها نزدیک نشده است، بنابراین
14
00:00:35,940 –> 00:00:37,469
آنچه ما میخواهیم. انجام این کار در واقع
15
00:00:37,469 –> 00:00:39,960
یادگیری اصول اولیه خراش دادن وب و
16
00:00:39,960 –> 00:00:42,090
همچنین استفاده از برخی از ابزارهای مدرن برای
17
00:00:42,090 –> 00:00:44,100
اجرای واقعی آن برای تحقق آن است،
18
00:00:44,100 –> 00:00:46,440
اکنون چالش اینجا در
19
00:00:46,440 –> 00:00:50,190
واقع تجزیه داده ها است،
20
00:00:50,190 –> 00:00:52,379
گرفتن واقعی داده ها گرفتن
21
00:00:52,379 –> 00:00:54,420
داده ها بسیار آسان است زیرا از درخواستهای پایتون،
22
00:00:54,420 –> 00:00:56,550
اما حتی اگر از
23
00:00:56,550 –> 00:00:58,770
درخواستهای پایتون استفاده نمیکردید، باز کردن یک صفحه وب چندان سخت نیست،
24
00:00:58,770 –> 00:01:00,870
بنابراین بیایید نگاهی
25
00:01:00,870 –> 00:01:02,820
به وبسایتی بیندازیم که در این مورد استفاده میکنیم.
26
00:01:02,820 –> 00:01:05,360
Box Office Mojo
27
00:01:05,360 –> 00:01:06,750
com،
28
00:01:06,750 –> 00:01:08,189
بنابراین اگر با این
29
00:01:08,189 –> 00:01:10,560
وب سایت آشنایی ندارید، تنها کاری که انجام می دهد این است که
30
00:01:10,560 –> 00:01:13,290
فروش باکس آفیس برای هر فیلمی را در
31
00:01:13,290 –> 00:01:15,509
آن زمان لیست می کند، اگر روی آن در سراسر جهان
32
00:01:15,509 –> 00:01:17,670
کلیک کنید، آمار بیست و بیست و بیست در سراسر جهان
33
00:01:17,670 –> 00:01:19,380
یا هر سالی که هستید را مشاهده خواهید کرد. با
34
00:01:19,380 –> 00:01:21,600
تماشای مجدد این احتمالاً
35
00:01:21,600 –> 00:01:23,040
در آینده تغییر زیادی نخواهد کرد،
36
00:01:23,040 –> 00:01:26,580
اگرچه برخی از چیزهای آن ممکن است، اما
37
00:01:26,580 –> 00:01:28,740
مفهوم کلی این است که ما میخواهیم از یک
38
00:01:28,740 –> 00:01:32,070
برنامه پایتون برای جستجوی این
39
00:01:32,070 –> 00:01:34,259
اعداد در اینجا استفاده کنیم، بخش بزرگی از دلیل
40
00:01:34,259 –> 00:01:37,470
من میخواهم. برای انجام این کار به خوبی بسیار
41
00:01:37,470 –> 00:01:40,110
مفید است که بدانید چگونه می توان وب
42
00:01:40,110 –> 00:01:42,810
اسکرپینگ را انجام داد، خود IMDB چیزی به
43
00:01:42,810 –> 00:01:45,869
نام API ندارد، اکنون بسیاری از خدمات در
44
00:01:45,869 –> 00:01:46,890
پایین صفحه شما چیزی مانند
45
00:01:46,890 –> 00:01:50,159
توسعه دهنده یا API یا خدمات توسعه دهنده
46
00:01:50,159 –> 00:01:52,320
بسیاری از آنها را خواهید دید. چیزی به
47
00:01:52,320 –> 00:01:54,630
نام API خواهد داشت که اساساً
48
00:01:54,630 –> 00:01:57,899
گرفتن این نوع دادهها را برای پایتون بسیار آسان میکند،
49
00:01:57,899 –> 00:02:00,420
من قطعاً قصد دارم آنها را پوشش
50
00:02:00,420 –> 00:02:02,219
دهم، زیرا یکی از روزها
51
00:02:02,219 –> 00:02:05,100
واقعاً با یک API کار میکند، بنابراین مطمئن شوید که
52
00:02:05,100 –> 00:02:07,350
برای آن باقی میمانید اما برای n. اوه،
53
00:02:07,350 –> 00:02:09,389
کاری که من میخواهم انجام دهم این است که در واقع از پایتون
54
00:02:09,389 –> 00:02:12,840
برای گرفتن دادههای موجود در اینجا استفاده کنم،
55
00:02:12,840 –> 00:02:13,800
56
00:02:13,800 –> 00:02:16,800
مطمئناً درک برخی از HTML و
57
00:02:16,800 –> 00:02:19,530
CSS اولیه برای واقعاً مؤثر کردن این کار
58
00:02:19,530 –> 00:02:21,690
در خارج از استفاده از باکس آفیس
59
00:02:21,690 –> 00:02:24,270
mojo بسیار دشوار خواهد بود، اما حتی اگر این کار را نکنید. کاملاً
60
00:02:24,270 –> 00:02:25,980
درک کنید که شما هنوز هم می توانید
61
00:02:25,980 –> 00:02:28,850
مقدار زیادی از چیزها را از خراش دادن وب
62
00:02:28,850 –> 00:02:31,980
به هر حال به دست آورید، بنابراین بیایید ادامه دهیم و
63
00:02:31,980 –> 00:02:34,740
با
64
00:02:34,740 –> 00:02:36,990
کد شروع می کنیم.
65
00:02:36,990 –> 00:02:41,610
و در اینجا من
66
00:02:41,610 –> 00:02:43,500
یک فایل جدید می سازم و فقط این scrape PI را صدا می زنیم
67
00:02:43,500 –> 00:02:47,580
و من می خواهم درخواست های Python را وارد
68
00:02:47,580 –> 00:02:49,770
کنم.
69
00:02:49,770 –> 00:02:51,390
70
00:02:51,390 –> 00:02:54,690
71
00:02:54,690 –> 00:02:58,590
درخواستهای نصب را مانند
72
00:02:58,590 –> 00:02:59,880
شانسی که قبلاً آن را نصب کردهاید،
73
00:02:59,880 –> 00:03:01,260
زیرا ما قبلاً از آن استفاده
74
00:03:01,260 –> 00:03:03,600
کردهایم، بنابراین کاری که میخواهم انجام دهم این است که در واقع
75
00:03:03,600 –> 00:03:06,270
میخواهم نتیجه
76
00:03:06,270 –> 00:03:07,620
درخواستهای پایتون را ببینم، بنابراین قبل از اینکه واقعاً یک
77
00:03:07,620 –> 00:03:09,360
سری کد بنویسم، اجازه دهید جلو برویم و یک کد را انتخاب کنیم.
78
00:03:09,360 –> 00:03:11,310
اینجا را نگاه کنید، من جلوتر می روم و در را باز
79
00:03:11,310 –> 00:03:14,370
می کنم ترمینال واقعی و ما
80
00:03:14,370 –> 00:03:19,650
به درخواستهای واردات پایتون 3 میپریم و
81
00:03:19,650 –> 00:03:22,200
میخواهیم URL خود را بگیریم، بنابراین آدرس URL
82
00:03:22,200 –> 00:03:25,520
خواهد بود، بگذارید فقط از این URL درست در اینجا استفاده کنیم،
83
00:03:25,520 –> 00:03:27,660
بنابراین من میروم و کل آن را کپی میکنم و
84
00:03:27,660 –> 00:03:32,280
آن را خوب جایگذاری میکنم. یکی از
85
00:03:32,280 –> 00:03:33,959
مواردی که معمولاً
86
00:03:33,959 –> 00:03:36,570
در مورد URL ها می توانید نادیده بگیرید، هر چیزی بعد از
87
00:03:36,570 –> 00:03:39,270
علامت سؤال است که در برخی موارد نمی
88
00:03:39,270 –> 00:03:41,070
خواهید استفاده کنید و نمی خواهید آن چیزها را از دست بدهید،
89
00:03:41,070 –> 00:03:43,230
اما در مورد ما اینجا
90
00:03:43,230 –> 00:03:45,600
قطعاً نیازی ندارم. چه چیزی بعد از
91
00:03:45,600 –> 00:03:46,739
آن علامت سوال از جمله
92
00:03:46,739 –> 00:03:48,480
علامت سوال است، بنابراین من فقط میروم
93
00:03:48,480 –> 00:03:51,000
و آن را در آنجا میاندازم و میبینم و
94
00:03:51,000 –> 00:03:52,560
مطمئن میشوم که هنوز
95
00:03:52,560 –> 00:03:54,180
همان صفحه را ارائه میکند و البته
96
00:03:54,180 –> 00:03:56,670
خوب است، بنابراین کاری که میخواهم انجام دهم باز است این
97
00:03:56,670 –> 00:03:59,489
صفحه را با استفاده از پایتون مانند
98
00:03:59,489 –> 00:04:01,230
مرورگر وب بالا ببرید، بنابراین میگویید R
99
00:04:01,230 –> 00:04:04,709
برابر با 2 درخواست است که URL را دریافت میکنند و
100
00:04:04,709 –> 00:04:07,830
اینتر را فشار میدهند و اگر کد زیر خط وضعیت را انجام دهیم،
101
00:04:07,830 –> 00:04:10,709
احتمالاً در 200 خواهید دید که
102
00:04:10,709 –> 00:04:13,230
این یک کد موفقیت است. این عالی است
103
00:04:13,230 –> 00:04:15,570
و اگر متن نقطهای خود را انجام
104
00:04:15,570 –> 00:04:18,690
دهیم، یک دسته HTM به دست میآید اگر
105
00:04:18,690 –> 00:04:20,579
با tml دستمزد آشنایی ندارید، این
106
00:04:20,579 –> 00:04:23,729
ستون ستون فقرات هر صفحه وب است، بنابراین برای
107
00:04:23,729 –> 00:04:26,740
دیدن HTML برای هر صفحه وب معینی که
108
00:04:26,740 –> 00:04:28,990
مرورگر وب خود را باز می کند،
109
00:04:28,990 –> 00:04:31,300
اگر از یک مرورگر وب دسکتاپ استفاده کنید، مرورگرهای وب تلفن همراه خود بهترین کار را انجام می دهد.
110
00:04:31,300 –> 00:04:33,490
به خوبی یافتن کد منبع کار نمی کند،
111
00:04:33,490 –> 00:04:36,370
اما نسخه های
112
00:04:36,370 –> 00:04:38,229
دسکتاپ قطعاً شما می
113
00:04:38,229 –> 00:04:40,210
خواهید برای مشاهده برنامه نویس و مشاهده منبع
114
00:04:40,210 –> 00:04:43,030
در حال حاضر بروید من در کروم هستم همه آنها آن را دارند
115
00:04:43,030 –> 00:04:45,819
Safari Firefox Opera همه آنها
116
00:04:45,819 –> 00:04:48,940
راهی برای در صورت نیاز، این کد منبع
117
00:04:48,940 –> 00:04:51,099
را مشاهده کنید، ممکن است مجبور شوید
118
00:04:51,099 –> 00:04:53,020
برخی از ابزارهای توسعه دهنده را فعال کنید تا این اتفاق بیفتد،
119
00:04:53,020 –> 00:04:55,389
به هر حال این HTML است
120
00:04:55,389 –> 00:04:57,849
که آن صفحه را هدایت می کند، بنابراین اگر
121
00:04:57,849 –> 00:05:00,250
به پایین اسکرول کنم، دقیقاً همان موارد را می بینم.
122
00:05:00,250 –> 00:05:03,400
من این کار را انجام دادم، همین
123
00:05:03,400 –> 00:05:05,470
جا، شما بروید، من همه این موارد را دقیقاً در اینجا دریافت کردم،
124
00:05:05,470 –> 00:05:07,659
این باید دقیقاً یکسان یا
125
00:05:07,659 –> 00:05:09,849
تقریباً دقیقاً مشابه چیزی باشد که
126
00:05:09,849 –> 00:05:13,240
در اینجا داریم، بسیار خوب، منظورم این است که برخی از چیزها
127
00:05:13,240 –> 00:05:16,090
ممکن است به دلیل کاری که جاوا
128
00:05:16,090 –> 00:05:18,940
اسکریپت واقعاً جاوا اسکریپت انجام می دهد از بین رفته باشد.
129
00:05:18,940 –> 00:05:22,419
صفحات HTML را تغییر خواهد داد و این تغییر خواهد کرد کار نمی کند یا
130
00:05:22,419 –> 00:05:24,099
روشی که می خواهیم انجام دهیم
131
00:05:24,099 –> 00:05:26,979
روی صفحات سنگین جاوا اسکریپت کار نمی کند، ما
132
00:05:26,979 –> 00:05:28,300
روشی برای انجام آن داریم و من به شما نشان می
133
00:05:28,300 –> 00:05:32,259
دهم که امروز در روز دوازدهم نیست، بنابراین به هر
134
00:05:32,259 –> 00:05:35,020
حال ایده اینجا این است که ما می توانیم این را باز
135
00:05:35,020 –> 00:05:38,320
کنیم. HTML اکنون بخش سخت اصلی
136
00:05:38,320 –> 00:05:40,930
تجزیه HTML است، بنابراین قبل
137
00:05:40,930 –> 00:05:42,699
از تجزیه واقعی، اجازه دهید ادامه دهیم
138
00:05:42,699 –> 00:05:47,259
و این متن را در فایلی ذخیره کنیم که
139
00:05:47,259 –> 00:05:50,020
واقعاً بتوانیم دوباره آن را باز کنیم، بنابراین من فقط
140
00:05:50,020 –> 00:05:54,430
ادامه می دهم و می گویم URL به فایل را تعریف کنید.
141
00:05:54,430 –> 00:05:56,949
و یک URL دریافت می کند و دوباره ما ادامه می دهیم
142
00:05:56,949 –> 00:05:59,229
و می گوییم R برابر با 2 درخواست است
143
00:05:59,229 –> 00:06:03,940
که آن URL را دریافت می کند و اگر وضعیت یا بهتر است
144
00:06:03,940 –> 00:06:07,270
وضعیت نقطه ما در کد کوتاه برابر
145
00:06:07,270 –> 00:06:10,060
با 200 باشد، ادامه می دهیم و متن HTML را می گوییم.
146
00:06:10,060 –> 00:06:15,880
برابر با متن ما خوب است، بنابراین ما
147
00:06:15,880 –> 00:06:17,560
در واقع به یک نام فایل برای این کار نیاز داریم،
148
00:06:17,560 –> 00:06:20,919
بنابراین نام فایل برابر با 2 است و من
149
00:06:20,919 –> 00:06:22,990
فقط ادامه می دهم و HTML نقطه جهانی را انجام می دهم،
150
00:06:22,990 –> 00:06:25,240
زیرا در پایان این
151
00:06:25,240 –> 00:06:28,900
دنیای URL است که HTML و من می خواهیم ذخیره کنیم. این یک
152
00:06:28,900 –> 00:06:31,690
جایی است تا بتوانم ادامه دهم و
153
00:06:31,690 –> 00:06:35,349
با open و نام فایل بگویم و
154
00:06:35,349 –> 00:06:41,050
آن را به صورت F و سپس F نقطه w بنویسم rite
155
00:06:41,050 –> 00:06:45,220
text HTML و سپس من حتی
156
00:06:45,220 –> 00:06:47,770
اگر بخواهم بعداً این متن را به چیز دیگری تغییر دهم
157
00:06:47,770 –> 00:06:50,740
آن متن HTML را برمی گردم زیرا به طور کلی
158
00:06:50,740 –> 00:06:52,680
منظورم این است که شما ممکن است بخواهید واقعاً HTML حاصل را ذخیره کنید،
159
00:06:52,680 –> 00:06:55,630
اما من
160
00:06:55,630 –> 00:06:57,790
فقط می خواهم آن را در آن قرار دهم.
161
00:06:57,790 –> 00:07:00,250
چیزهایی را که قبلاً آموخته ایم تمرین کنید، بنابراین من
162
00:07:00,250 –> 00:07:01,720
می خواهم ادامه دهم و فقط این را در
163
00:07:01,720 –> 00:07:04,540
اینجا صدا بزنم، من آن را درست در خط تماس می گیرم فقط
164
00:07:04,540 –> 00:07:08,350
برای اینکه کار را برای من آسان کند، بنابراین من ادامه می دهم
165
00:07:08,350 –> 00:07:10,150
و از این خارج می شوم زیرا ما به
166
00:07:10,150 –> 00:07:13,330
مرور زمان آن را تغییر خواهیم داد، بنابراین من در
167
00:07:13,330 –> 00:07:14,770
پروژه خود هستم البته من میروم و
168
00:07:14,770 –> 00:07:19,320
سی دی را به روز دوازدهم و سپس پایتون 3 – i و
169
00:07:19,320 –> 00:07:25,120
scrape-up را ادامه میدهم و بنابراین پاسخی دریافت میکنم
170
00:07:25,120 –> 00:07:27,370
وضعیت املای ندارد
171
00:07:27,370 –> 00:07:32,680
کد وضعیت نادرست ممکن است متوجه شده باشید
172
00:07:32,680 –> 00:07:33,390
که
173
00:07:33,390 –> 00:07:35,920
آیا شما عاشق اشتباهات املایی نیستید،
174
00:07:35,920 –> 00:07:39,730
پس من آن را اجرا کردم و اجازه دهید به
175
00:07:39,730 –> 00:07:43,600
روز 12 در Finder نگاهی بیندازیم و
176
00:07:43,600 –> 00:07:45,160
177
00:07:45,160 –> 00:07:47,770
اگر این را باز کنید، اکنون چه می دانید که جهان نقطه HTML وجود دارد. به مرورگر وب خود
178
00:07:47,770 –> 00:07:50,320
توجه کنید که من اکنون این صفحه را
179
00:07:50,320 –> 00:07:53,410
در سیستم محلی من دارم، بنابراین
180
00:07:53,410 –> 00:07:55,270
همه چیز در مورد داده هاست که ما به
181
00:07:55,270 –> 00:07:58,660
آن نیاز داریم قبلاً ذخیره شده است، بنابراین این یک
182
00:07:58,660 –> 00:08:02,260
روش جالب برای در نهایت ذخیره داده است،
183
00:08:02,260 –> 00:08:04,210
مثلاً اگر نمی دانید چگونه
184
00:08:04,210 –> 00:08:06,880
داده ها را تجزیه کنید، اما این یک روش
185
00:08:06,880 –> 00:08:10,900
واقعاً هوشمندانه برای حفظ آن داده ها
186
00:08:10,900 –> 00:08:13,720
و مرتبط کردن آنها با آنچه هستند خواهد بود. که
187
00:08:13,720 –> 00:08:16,090
شما در حال کار روی آن هستید، بنابراین راه دیگری برای
188
00:08:16,090 –> 00:08:20,110
فکر کردن به این موضوع نیز این است که فقط
189
00:08:20,110 –> 00:08:23,200
تاریخ و زمان خود را بگیرید، بنابراین اگر من زمان تاریخ را وارد
190
00:08:23,200 –> 00:08:27,100
کردم و بعد گفتم چیزی شبیه به now
191
00:08:27,100 –> 00:08:31,600
برابر است با زمان تاریخ آن روز نقطه زمان
192
00:08:31,600 –> 00:08:36,659
اکنون و سپس سال برابر است با حالا به سال
193
00:08:36,659 –> 00:08:39,549
یا بهتر بگویم الان فقط همین الان در آن سال
194
00:08:39,549 –> 00:08:41,530
کاری که من می توانم انجام دهم این است که در واقع نام این
195
00:08:41,530 –> 00:08:44,020
فایل را به کمی
196
00:08:44,020 –> 00:08:45,610
متفاوت تغییر دهم و من فقط ادامه می دهم و می گویم
197
00:08:45,610 –> 00:08:50,590
world – year و از آن جایگزین رشته استفاده می کنم
198
00:08:50,590 –> 00:08:54,630
و سپس دوباره dot HTML را انجام می دهم.
199
00:08:54,630 –> 00:08:59,220
از این خارج شوید و آن را خراش دهید
200
00:08:59,220 –> 00:09:02,860
و چیزی که خواهیم دید این است که من اکنون یک سال
201
00:09:02,860 –> 00:09:06,550
یا یک نوع شی تاریخ در آنجا دارم، شما
202
00:09:06,550 –> 00:09:08,110
می توانید کارهای بیشتری انجام دهید، می توانید انجام دهید، می توانید
203
00:09:08,110 –> 00:09:10,149
روز ماه انجام دهید، می توانید همه آن کارها را انجام دهید و
204
00:09:10,149 –> 00:09:12,190
بگذرانید آن را در فایل واقعی ذخیره کنید و
205
00:09:12,190 –> 00:09:14,080
آن را به صورت محلی ذخیره کنید و سپس یک بار این کار را انجام دهید
206
00:09:14,080 –> 00:09:16,450
شما می توانید این کار را در انواع
207
00:09:16,450 –> 00:09:18,940
صفحات وب شروع کنید و سپس برگردید و
208
00:09:18,940 –> 00:09:20,709
سعی کنید نحوه تجزیه واقعی
209
00:09:20,709 –> 00:09:22,510
این داده ها را بیابید زیرا ما اکنون آنها را ذخیره
210
00:09:22,510 –> 00:09:25,029
و ذخیره کرده ایم البته در حال حاضر نیازی به انجام این کار نداریم،
211
00:09:25,029 –> 00:09:27,310
اما همینطور است. یک
212
00:09:27,310 –> 00:09:30,339
راه جالب برای انجام کارها، اما کاری که ما
213
00:09:30,339 –> 00:09:32,709
میخواهیم انجام دهیم این است که در واقع دادههایی را پیدا
214
00:09:32,709 –> 00:09:35,170
کنیم که واقعاً به آنها نیاز داریم و در مورد
215
00:09:35,170 –> 00:09:39,130
من این دادههای باکس آفیس جهانی 2020 را دارم که
216
00:09:39,130 –> 00:09:42,010
قبلاً برای من خوب و ساختار یافته است، اما من
217
00:09:42,010 –> 00:09:44,260
فقط باید آن را استخراج کنید و آن
218
00:09:44,260 –> 00:09:47,170
را مانند یک فایل CSV تبدیل کنید به یک فایل مقادیر جدا شده با کاما،
219
00:09:47,170 –> 00:09:49,360
بنابراین چگونه میتوانیم
220
00:09:49,360 –> 00:09:52,240
هر عنصری را در اینجا پیدا کنیم،
221
00:09:52,240 –> 00:09:55,450
مثلاً چگونه میتوانم
222
00:09:55,450 –> 00:10:00,190
به جای هر چیز دیگری، کل این جدول شما را دریافت کنم، بنابراین برای انجام
223
00:10:00,190 –> 00:10:02,860
این کار از آن استفاده میکنیم. یک بسته دیگر و
224
00:10:02,860 –> 00:10:05,829
آن پیپ R است، بیایید ادامه دهیم و فقط
225
00:10:05,829 –> 00:10:09,399
پایتون 3 را انجام دهیم – نصب پیپ M و
226
00:10:09,399 –> 00:10:13,750
درخواست های آن – HTML این بسته ای
227
00:10:13,750 –> 00:10:17,440
است که در ارتباط با
228
00:10:17,440 –> 00:10:19,600
درخواست های پایتون استفاده می شود یا فقط می توانید از درخواست ها
229
00:10:19,600 –> 00:10:21,760
در HTML و دلیل
230
00:10:21,760 –> 00:10:24,700
درخواست آن استفاده کنید – HTML به این دلیل است که
231
00:10:24,700 –> 00:10:29,200
شرط بندی زیادی دارد بیشتر از یک سوپ زیبا سوپ زیبا
232
00:10:29,200 –> 00:10:31,390
برای اگر شما تا به حال هر چیز
233
00:10:31,390 –> 00:10:33,910
دیگری را برای خراش دادن وب من تماشا کرده اید،
234
00:10:33,910 –> 00:10:36,480
این چیزی است که در درخواست قبلی H استفاده کرده ام
235
00:10:36,480 –> 00:10:40,630
– HTML قطعاً
236
00:10:40,630 –> 00:10:43,690
روش ترجیحی در حال حاضر است، بنابراین مطمئن شوید
237
00:10:43,690 –> 00:10:47,290
که آن را نصب کنید. با در
238
00:10:47,290 –> 00:10:50,829
نظر گرفتن این موضوع، کاری که میخواهم انجام دهم این است که
239
00:10:50,829 –> 00:10:53,200
یک جنبه دیگر به این اضافه میکنم
240
00:10:53,200 –> 00:10:58,300
و آن را به نوشتن به txt یا URL تغییر میدهم – txt
241
00:10:58,300 –> 00:11:02,140
مانند متن HTML و سپس ادامه میدهم
242
00:11:02,140 –> 00:11:04,529
و میگویم ذخیره برابر است. – false و
243
00:11:04,529 –> 00:11:06,940
244
00:11:06,940 –> 00:11:10,190
سپس اگر ذخیره شود، در واقع از
245
00:11:10,190 –> 00:11:12,680
اینجا می گذرم و آن را ذخیره می کنم، اما به عنوان پیش فرض من
246
00:11:12,680 –> 00:11:14,450
فقط نادرست می گویم بنابراین این کار را انجام نمی دهم،
247
00:11:14,450 –> 00:11:17,930
اما خوب است بدانید که ما می توانیم مشکلی
248
00:11:17,930 –> 00:11:20,900
نداشته باشیم، بنابراین چیز بعدی اکنون است که ما این
249
00:11:20,900 –> 00:11:23,600
متن URL را داریم، باید آنچه را در
250
00:11:23,600 –> 00:11:28,340
آن متن URL وجود دارد استخراج کنم، بنابراین URL به txt بیایید
251
00:11:28,340 –> 00:11:30,670
جلو برویم و دوباره از این خارج شویم و
252
00:11:30,670 –> 00:11:34,580
این بار من واقعاً آن
253
00:11:34,580 –> 00:11:37,460
فایل به دست آمده یا متن HTML حاصل را در اینجا
254
00:11:37,460 –> 00:11:39,950
می خواهم تا بتوانم چیزی شبیه به این بگویید
255
00:11:39,950 –> 00:11:42,020
من URL خود را دارم من تابعی دارم که
256
00:11:42,020 –> 00:11:44,540
آن را فراخوانی می کنیم پس بیایید ادامه
257
00:11:44,540 –> 00:11:46,790
دهیم و اینتر را انجام دهیم پوسته فعال دوباره
258
00:11:46,790 –> 00:11:49,340
واضح است که URL را برای من اجرا می کند، بنابراین من
259
00:11:49,340 –> 00:11:51,620
می توانم ادامه دهم و متن HTML را در اینجا کپی
260
00:11:51,620 –> 00:11:54,970
کنم و در واقع باید آن متن HTML را ببینم،
261
00:11:54,970 –> 00:11:57,770
بنابراین آنچه درخواست های Python به من اجازه می دهد انجام دهم این
262
00:11:57,770 –> 00:12:00,890
است که می توانیم بگوییم از درخواست های زیر خط
263
00:12:00,890 –> 00:12:05,720
HTML کلاس را وارد کنید. از HTML و سپس
264
00:12:05,720 –> 00:12:08,480
ما فقط باید این متن HTML
265
00:12:08,480 –> 00:12:12,430
یا رشته ای از متن را به این متن HTML منتقل
266
00:12:12,430 –> 00:12:14,840
کنیم، این بدان معناست که کاری که
267
00:12:14,840 –> 00:12:17,210
به من اجازه می دهد انجام دهم این است که در واقع از
268
00:12:17,210 –> 00:12:20,480
ویژگی های داخلی داخلی درخواست ها برای شروع
269
00:12:20,480 –> 00:12:23,840
تجزیه و تحلیل استاندارد استفاده کنم.
270
00:12:23,840 –> 00:12:25,730
ویژگیهای HTML که اکنون در اینجا وارد میشوند، به
271
00:12:25,730 –> 00:12:28,580
خاطر داشته باشید اگر میخواهید واقعاً جالب
272
00:12:28,580 –> 00:12:28,940
273
00:12:28,940 –> 00:12:31,220
باشید، میتوانید یاد بگیرید که چگونه هر یک
274
00:12:31,220 –> 00:12:34,100
از آیتمها را خودتان تجزیه کنید و به
275
00:12:34,100 –> 00:12:36,530
چیزی مانند درخواستهای پایتون تکیه نکنید که
276
00:12:36,530 –> 00:12:37,580
فکر میکنم تمرین بسیار جالبی
277
00:12:37,580 –> 00:12:40,130
برای کسانی است که شما که
278
00:12:40,130 –> 00:12:43,490
میخواهید حتی عمیقتر به این
279
00:12:43,490 –> 00:12:44,690
موضوع بپردازید، بنابراین آنچه را که من میخواهم ادامه دهم و بگویم این است
280
00:12:44,690 –> 00:12:49,040
که زیرخط R HTML برابر با کلاس HTML است
281
00:12:49,040 –> 00:12:52,040
و این همان خواهد بود که ما میخواهیم
282
00:12:52,040 –> 00:12:55,100
در رشته HTML عبور کنیم که مقدار زیادی است.
283
00:12:55,100 –> 00:12:57,410
از HTML زیاد می گوید ما جلوتر می رویم
284
00:12:57,410 –> 00:12:58,820
و آن را با آن متغیر واقعی به اینجا منتقل می
285
00:12:58,820 –> 00:13:01,880
کنیم و سپس اگر به
286
00:13:01,880 –> 00:13:05,630
HTML خود نگاه کنیم، یک شی از آن
287
00:13:05,630 –> 00:13:07,760
مثال در اینجا دریافت می کنیم، متوجه می شوم که URL را نشان نمی دهد،
288
00:13:07,760 –> 00:13:09,320
به این دلیل است که من در واقع این کار را نمی کنم.
289
00:13:09,320 –> 00:13:11,870
با ارسال URL به این، راهی
290
00:13:11,870 –> 00:13:14,240
برای استفاده از خود URL ها وجود دارد، اما من
291
00:13:14,240 –> 00:13:15,920
در این مورد این کار را انجام نمی دهم زیرا
292
00:13:15,920 –> 00:13:18,050
چیزی که ما می دانیم را می گیرد و فقط
293
00:13:18,050 –> 00:13:19,550
یک
294
00:13:19,550 –> 00:13:20,839
ویژگی اضافی اضافه می کند که
295
00:13:20,839 –> 00:13:24,800
لزوما نمی دانیم خوب است.
296
00:13:24,800 –> 00:13:26,480
در اینجا می توانید کاری انجام دهید مانند
297
00:13:26,480 –> 00:13:29,990
یافتن نقطه HTML زیرخط ما و می توانیم بگوییم
298
00:13:29,990 –> 00:13:33,800
مانند جدول بسیار خوب است که اینتر را فشار می دهم لیستی از مواردی را به من می دهد
299
00:13:33,800 –> 00:13:36,440
که با جدول عنصر مطابقت دارند
300
00:13:36,440 –> 00:13:38,540
اکنون اگر با HTML آشنایی
301
00:13:38,540 –> 00:13:41,089
دارید می توانید همه موارد مختلف را تایپ کنید.
302
00:13:41,089 –> 00:13:45,769
عناصر HTML مانند h1 و همه
303
00:13:45,769 –> 00:13:48,829
آنها قطعاً میتوانید آن کارها را انجام دهید و
304
00:13:48,829 –> 00:13:51,440
حتی عمیقتر بروید و زیر آن را پیدا کنید
305
00:13:51,440 –> 00:13:53,329
که در یک ثانیه در مورد آن صحبت خواهیم کرد، اما
306
00:13:53,329 –> 00:13:54,920
چگونه میدانید
307
00:13:54,920 –> 00:13:57,649
که در این باکس آفیس اینجا به دنبال چه چیزی بگردید.
308
00:13:57,649 –> 00:13:59,510
من می روم جلو و در کنترل
309
00:13:59,510 –> 00:14:03,610
کلیک کنید یا کلیک راست کنید و برای بازرسی به
310
00:14:03,610 –> 00:14:06,019
این می گویند بازرسی عنصر
311
00:14:06,019 –> 00:14:08,269
و شما چیزی شبیه به این را خواهید دید، بیایید
312
00:14:08,269 –> 00:14:11,240
ببینیم که آیا می توانم در آنجا بزرگنمایی کنم، بنابراین اکنون
313
00:14:11,240 –> 00:14:13,850
می توانم ماوس خود را روی هر عنصر داده شده بیاورم
314
00:14:13,850 –> 00:14:15,769
و آن عنصر بزرگنمایی می کند
315
00:14:15,769 –> 00:14:18,170
که آن عنصر چیست. درست است، بنابراین در این مورد،
316
00:14:18,170 –> 00:14:20,570
من این شناسه div را در اینجا دریافت کرده ام،
317
00:14:20,570 –> 00:14:25,490
به نظر می رسد که این جدول واقعی است که ما به آن نیاز داریم
318
00:14:25,490 –> 00:14:28,550
که می توانم با ورود به
319
00:14:28,550 –> 00:14:31,339
اینجا و زدن عنصر حذف، آن را امتحان کنم و چه
320
00:14:31,339 –> 00:14:32,690
می دانید که آن جدول کاملاً از بین می رود.
321
00:14:32,690 –> 00:14:34,310
بیایید پیش برویم و
322
00:14:34,310 –> 00:14:37,579
آن صفحه را بازخوانی کنیم و دوباره عنصر را بررسی
323
00:14:37,579 –> 00:14:41,120
کنیم و فقط یک جورهایی به سمت بالا بروید.
324
00:14:41,120 –> 00:14:43,339
325
00:14:43,339 –> 00:14:44,570
326
00:14:44,570 –> 00:14:46,790
327
00:14:46,790 –> 00:14:49,610
کل
328
00:14:49,610 –> 00:14:51,829
جدول فقط قسمت بالایی است، بنابراین
329
00:14:51,829 –> 00:14:53,690
تنها چیزی که واقعاً کل قسمت
330
00:14:53,690 –> 00:14:56,420
است این است که اینجا و دوباره ما فقط
331
00:14:56,420 –> 00:14:58,370
به همان عنصر نیاز داشتیم، بنابراین
332
00:14:58,370 –> 00:15:01,339
قطعاً واضح است که این همان عنصر است، بنابراین
333
00:15:01,339 –> 00:15:03,949
من همچنین متوجه شدم که آنها چگونه نام خود را نامگذاری کرده اند.
334
00:15:03,949 –> 00:15:05,720
کلاسها حتی نگران نباشید
335
00:15:05,720 –> 00:15:07,970
اگر دقیقاً معنی این را نمیدانید، اما
336
00:15:07,970 –> 00:15:10,459
میبینید که میگوید کلاس برابر است و این یک
337
00:15:10,459 –> 00:15:13,430
رشته چیزهایی است که چگونه کلاسهایشان را نامگذاری میکنند
338
00:15:13,430 –> 00:15:14,990
، به شما نشان میدهد
339
00:15:14,990 –> 00:15:17,839
که هی ممکن است کل جدول باشد.
340
00:15:17,839 –> 00:15:22,190
میگوید IMDB – اسکرول – جدولی
341
00:15:22,190 –> 00:15:24,709
که آنقدرها هم شگفتانگیز نیست، بسیار
342
00:15:24,709 –> 00:15:25,250
ساده است،
343
00:15:25,250 –> 00:15:26,770
پس بیایید جلو برویم و آن یکی را امتحان کنیم،
344
00:15:26,770 –> 00:15:29,390
پس کاری که میخواهیم انجام دهیم با این
345
00:15:29,390 –> 00:15:31,640
متن HTML است که من میخواهم به اینجا بیایم.
346
00:15:31,640 –> 00:15:32,820
برای چاپ
347
00:15:32,820 –> 00:15:35,790
HTML یا خوب اول از همه باید
348
00:15:35,790 –> 00:15:38,040
متن HTML را Eclair بخوانیم، زیرا
349
00:15:38,040 –> 00:15:42,480
HTML زیرخط برابر با HTML است و HTML
350
00:15:42,480 –> 00:15:45,840
برابر با متن HTML است، بیایید مطمئن شویم که آن را وارد میکنیم،
351
00:15:45,840 –> 00:15:46,710
352
00:15:46,710 –> 00:15:51,330
بنابراین از درخواستهایی که بر HTML تأکید دارند، ادامه میدهیم
353
00:15:51,330 –> 00:15:55,590
تا HTML را وارد کنیم. کلاس و
354
00:15:55,590 –> 00:15:57,810
ما به آنجا می رویم، بنابراین به این صورت اعلام می کنیم که
355
00:15:57,810 –> 00:16:00,150
هر رشته HTML را به چیزی تبدیل می
356
00:16:00,150 –> 00:16:01,950
کند که توسط درخواست های HTML مدیریت می شود
357
00:16:01,950 –> 00:16:05,640
بسیار جالب است، بنابراین اکنون که
358
00:16:05,640 –> 00:16:08,850
کاری که من می توانم انجام دهم این است که به اینجا بیایم و
359
00:16:08,850 –> 00:16:13,950
بگویم کلاس زیر خط جدول و ما
360
00:16:13,950 –> 00:16:16,320
می خواهم آن را برابر با چیزی تعیین کنم، بنابراین من
361
00:16:16,320 –> 00:16:18,090
g ادامه بده و فقط تمام این
362
00:16:18,090 –> 00:16:20,190
چیزها را اینجا بگیر، من هیچ
363
00:16:20,190 –> 00:16:22,080
فرضی نمیکنم، من فقط ادامه میدهم
364
00:16:22,080 –> 00:16:25,710
و همه چیز را میگیرم، بنابراین
365
00:16:25,710 –> 00:16:28,350
این کلاس جدولی است که من
366
00:16:28,350 –> 00:16:30,300
سعی میکنم پیدا کنم. ادامه دهید و
367
00:16:30,300 –> 00:16:34,200
نقطههای زیرخط HTML خود را پیدا کنید و ما
368
00:16:34,200 –> 00:16:36,810
در کلاس جدولی که خود رشته است عبور میکنیم
369
00:16:36,810 –> 00:16:38,790
و من فقط جلو میروم و نتیجه را چاپ
370
00:16:38,790 –> 00:16:41,550
میکنم و من فقط
371
00:16:41,550 –> 00:16:43,620
میگویم جدول من یا بهتر است
372
00:16:43,620 –> 00:16:47,340
جدول ما به عنوان درخواست یک جدول درخواست جدول HTML
373
00:16:47,340 –> 00:16:50,820
من می خواهم آن را چاپ کنم و بیایید
374
00:16:50,820 –> 00:16:52,830
نگاهی بیندازیم از پوسته تعاملی قدیمی خود خارج می شوم و
375
00:16:52,830 –> 00:16:55,860
به پوسته
376
00:16:55,860 –> 00:16:59,220
جدید می پردازم و این لیست خالی را اینجا دریافت می کنم، بنابراین در اینجا
377
00:16:59,220 –> 00:17:01,710
به دنبال این رشته
378
00:17:01,710 –> 00:17:03,720
می گردد. اما اکنون چیزی پیدا نمی کند
379
00:17:03,720 –> 00:17:06,210
به یاد داشته باشید اگر فقط آن را به a تغییر دادم
380
00:17:06,210 –> 00:17:07,770
، چیزی پیدا می کند، بنابراین بیایید جلوتر برویم
381
00:17:07,770 –> 00:17:10,380
و از این خارج شویم و دوباره آن را اجرا کنیم این
382
00:17:10,380 –> 00:17:11,819
بار در واقع همه
383
00:17:11,819 –> 00:17:14,460
پیوندهایی را که در آنجا هستند به من نشان می دهد، بنابراین البته
384
00:17:14,460 –> 00:17:18,599
عنصر a برای همه پیوندها یک تگ است
385
00:17:18,599 –> 00:17:21,420
که به آن تگ لنگر می گویند بنابراین کاری که
386
00:17:21,420 –> 00:17:23,760
می خواهیم انجام دهیم این است ما اکنون می خواهیم یکی از
387
00:17:23,760 –> 00:17:27,569
این عناصر را با کلاس های HTML
388
00:17:27,569 –> 00:17:29,820
پیدا کنیم و اینکه چگونه آنها را در واقع پیدا کنید این است که از
389
00:17:29,820 –> 00:17:32,580
چیزی به نام انتخابگر استفاده می کنید که ما
390
00:17:32,580 –> 00:17:34,350
فقط از یکی از این کلاس ها استفاده می کنیم
391
00:17:34,350 –> 00:17:37,290
و همانطور که گفتم شهود من این است
392
00:17:37,290 –> 00:17:39,630
که درست است در اینجا و من فقط
393
00:17:39,630 –> 00:17:41,250
تعداد نمونه هایی را
394
00:17:41,250 –> 00:17:42,720
که وجود دارد پیدا می کنم، شاید بیشتر از
395
00:17:42,720 –> 00:17:44,220
این مورد وجود داشته باشد و اگر
396
00:17:44,220 –> 00:17:45,480
یک بار بیشتر باشد، باید به
397
00:17:45,480 –> 00:17:48,480
جدول نقاشی یا تخته نقاشی برگردم، بنابراین
398
00:17:48,480 –> 00:17:52,320
وقتی نوبت به کلاس ها می رسد، انتخابگر
399
00:17:52,320 –> 00:17:54,480
برای class این اصطلاح فنی برای
400
00:17:54,480 –> 00:17:57,480
آن است این است که شما یک نقطه را در مقابل هر
401
00:17:57,480 –> 00:17:59,539
آیتم مشخصی که در همانجا است قرار می دهید، بنابراین
402
00:17:59,539 –> 00:18:05,669
period mojo – دوره ناودانی imd – اسکرول
403
00:18:05,669 –> 00:18:08,460
– جدول – سبک ها اگر به دنبال
404
00:18:08,460 –> 00:18:12,720
شناسه خاصی هستید، از هش استفاده می کنید.
405
00:18:12,720 –> 00:18:15,659
گزینه بالقوه دیگری که در اینجا قرار می دهم این است که
406
00:18:15,659 –> 00:18:20,659
کلاس جدول برابر با جدول هش تگ است،
407
00:18:20,659 –> 00:18:24,570
زیرا این شناسه مشکلی ندارد، بنابراین اگر
408
00:18:24,570 –> 00:18:27,600
با CSS آشنایی
409
00:18:27,600 –> 00:18:29,669
دارید، اگر با jQuery آشنایی دارید،
410
00:18:29,669 –> 00:18:32,250
این برای شما کاملاً واضح است. کاربران جاوا اسکریپت
411
00:18:32,250 –> 00:18:34,380
فقط شما را جاوا اسکریپت خالص می کنند ممکن است
412
00:18:34,380 –> 00:18:36,990
با این نیز آشنا باشید، زیرا
413
00:18:36,990 –> 00:18:39,539
در اینجا چیزهای بسیار ابتدایی HTML هستند،
414
00:18:39,539 –> 00:18:41,970
پس حالا که این را داریم، اجازه دهید دوباره آن
415
00:18:41,970 –> 00:18:43,650
پوسته تعاملی را اجرا کنیم
416
00:18:43,650 –> 00:18:47,490
و scrape را اجرا کنیم و چه می
417
00:18:47,490 –> 00:18:49,830
دانید که من فقط یک عنصر در این
418
00:18:49,830 –> 00:18:52,770
لیست دارم. درست همانطور که می توانید با این
419
00:18:52,770 –> 00:18:55,110
چیز محصور ببینید، بنابراین این عنصر
420
00:18:55,110 –> 00:18:58,320
یک کلاس دیگر از نوع HTML است که فقط یک عنصر نامیده می شود
421
00:18:58,320 –> 00:19:00,630
، بنابراین معنی آن این است که من
422
00:19:00,630 –> 00:19:03,360
واقعاً می توانم در داخل آن کلاس جستجو کنم و
423
00:19:03,360 –> 00:19:07,320
همچنین کار دیگری که می توانم انجام دهم این است که
424
00:19:07,320 –> 00:19:09,390
باید در واقع بتوانم
425
00:19:09,390 –> 00:19:13,770
مقداری را که در داخل هر
426
00:19:13,770 –> 00:19:17,370
عنصر HTML وجود دارد، بگیرید، پس بیایید ادامه دهیم و بگوییم اگر
427
00:19:17,370 –> 00:19:21,480
طول جدول زیر خط ما برابر با
428
00:19:21,480 –> 00:19:24,179
1 باشد، وارد آن می شویم و جدول خود را چاپ می
429
00:19:24,179 –> 00:19:28,380
کنیم و مطمئن شوید که از
430
00:19:28,380 –> 00:19:33,900
جداول در جدول خود HTML استفاده می کنیم. dot txt بسیار
431
00:19:33,900 –> 00:19:36,659
شبیه درخواستها است، فقط درخواستهای قدیمی پایتون.
432
00:19:36,659 –> 00:19:39,240
433
00:19:39,240 –> 00:19:41,159
434
00:19:41,159 –> 00:19:44,580
435
00:19:44,580 –> 00:19:46,200
436
00:19:46,200 –> 00:19:48,210
که
437
00:19:48,210 –> 00:19:51,270
از بنابراین بیایید دوباره وارد پوسته تعاملی خود شویم
438
00:19:51,270 –> 00:19:53,700
و از پوسته اصلی خارج شویم
439
00:19:53,700 –> 00:19:56,820
و دوباره آن را اجرا کنیم و من یک
440
00:19:56,820 –> 00:19:57,900
آیتم لیست دارای
441
00:19:57,900 –> 00:20:00,240
متن ویژگی است که فقط یک اشتباه کوچک است
442
00:20:00,240 –> 00:20:02,340
زیرا جدول ما یک لیست است همانطور
443
00:20:02,340 –> 00:20:04,860
که در اینجا تأیید می کردیم بنابراین می خواهیم برای
444
00:20:04,860 –> 00:20:07,050
اطمینان از اینکه آن طول یک است، بنابراین
445
00:20:07,050 –> 00:20:07,950
ما فقط میرویم و
446
00:20:07,950 –> 00:20:11,370
گریت اولین موقعیت را که
447
00:20:11,370 –> 00:20:14,370
شاخص صفر یا شاخص صفر است به دست میآوریم، پس بیایید
448
00:20:14,370 –> 00:20:17,820
جلو برویم و آن را به این شکل رها کنیم
449
00:20:17,820 –> 00:20:20,940
تا به خروجی ترمینال برگردیم و
450
00:20:20,940 –> 00:20:23,010
دوباره آن پوسته تعاملی پایتون را اجرا کنید و
451
00:20:23,010 –> 00:20:24,870
چه میدانید که در واقع
452
00:20:24,870 –> 00:20:28,200
همه این دادهها را به من میدهد، این بسیار
453
00:20:28,200 –> 00:20:29,730
واضحتر خواهد بود اگر من چنین کاری انجام دهم
454
00:20:29,730 –> 00:20:31,770
یا حتی در دستگاه خودتان،
455
00:20:31,770 –> 00:20:34,770
همه آنها را مشاهده خواهید کرد. داده ها
456
00:20:34,770 –> 00:20:38,640
بسیار جالب هستند، بنابراین خوب هستند، اما
457
00:20:38,640 –> 00:20:41,640
آنطور که من امیدوار هستم ساختارمند نیستند، کاری که من می
458
00:20:41,640 –> 00:20:43,740
خواهم انجام دهم این است که در واقع این جدول
459
00:20:43,740 –> 00:20:47,010
را به لیستی از لیست ها تبدیل کنم، به عبارت دیگر
460
00:20:47,010 –> 00:20:50,100
اولین مورد در لیست لیست های من خواهد
461
00:20:50,100 –> 00:20:53,160
بود. سرصفحه دوم،
462
00:20:53,160 –> 00:20:55,260
ردیف اول واقعی آن خواهد بود این جدول
463
00:20:55,260 –> 00:20:57,360
در یک نقطه آن را به یک CSV
464
00:20:57,360 –> 00:21:00,630
یا در نقطهای به آیتم مقادیر جدا شده با کاما تبدیل میکند،
465
00:21:00,630 –> 00:21:04,170
بنابراین برای انجام این کار میتوانم
466
00:21:04,170 –> 00:21:06,270
کاری بسیار جالب انجام دهم و آن این است که ادامه میدهم
467
00:21:06,270 –> 00:21:09,360
و میگویم جدول تجزیهشده برابر با
468
00:21:09,360 –> 00:21:14,960
جدول ما و صفر است. عنصر و
469
00:21:14,960 –> 00:21:17,010
در داخل اینجا من فقط جلو می روم و
470
00:21:17,010 –> 00:21:21,020
می گویم ردیف ها برابر با جدول تجزیه شده تعریف شده است.
471
00:21:21,020 –> 00:21:25,380
TR TRS معمولاً مخفف ردیف جدول
472
00:21:25,380 –> 00:21:29,430
در داخل HTML است، بنابراین اگر در
473
00:21:29,430 –> 00:21:31,770
خود ردیف های جدول به پایین برگه بزنم، می بینم که ردیف های جدول خود را
474
00:21:31,770 –> 00:21:35,130
فقط دریافت کرده ام. اینطور است و
475
00:21:35,130 –> 00:21:37,280
همه این ردیفهای جدول را به من نشان میدهد،
476
00:21:37,280 –> 00:21:40,950
بنابراین یکی از چالشهای این موضوع
477
00:21:40,950 –> 00:21:43,350
این است که نمیدانم جاوا اسکریپت
478
00:21:43,350 –> 00:21:46,500
به طور بالقوه باعث ایجاد مشکل
479
00:21:46,500 –> 00:21:48,270
در نگاه من به این چیزها میشود،
480
00:21:48,270 –> 00:21:50,610
بنابراین قبل از اینکه واقعاً به دنبال آن
481
00:21:50,610 –> 00:21:52,200
ردیفهای جدول بگردم، اجازه دهید ادامه دهید و ببینید
482
00:21:52,200 –> 00:21:54,390
جاوا اسکریپت چه کاری انجام می دهد، بنابراین توجه کنید که
483
00:21:54,390 –> 00:21:57,710
در داخل جدول اسکرول من دو
484
00:21:57,710 –> 00:22:00,240
عنصر جدول واقعی در اینجا وجود دارد که در واقع
485
00:22:00,240 –> 00:22:03,090
سه عنصر جدول در اینجا وجود دارد که
486
00:22:03,090 –> 00:22:06,060
باعث ایجاد مشکلات بالقوه برای من در
487
00:22:06,060 –> 00:22:08,580
هنگام انجام این خراش دادن وب می شود.
488
00:22:08,580 –> 00:22:10,830
این کنسول باز است
489
00:22:10,830 –> 00:22:11,470
به خاطر داشته باشید
490
00:22:11,470 –> 00:22:13,480
که یک برنامهنویس view دارد که میتوانید
491
00:22:13,480 –> 00:22:16,240
منبع را مشاهده کنید و در واقع
492
00:22:16,240 –> 00:22:17,500
آن صفحه را نشان میدهد، بنابراین شما نمیخواهید این کار
493
00:22:17,500 –> 00:22:19,750
را انجام دهید مشاهده ابزارهای توسعهدهنده،
494
00:22:19,750 –> 00:22:22,240
من فقط آن را تغییر دادم، آن را بستم، بنابراین اجازه
495
00:22:22,240 –> 00:22:24,490
دهید آن را باز کنیم و داخل
496
00:22:24,490 –> 00:22:27,039
اینجا دستور shift P یا کنترل shift P را انجام میدهد،
497
00:22:27,039 –> 00:22:28,690
اگر در ویندوز هستید، سپس ما ادامه میدهیم
498
00:22:28,690 –> 00:22:30,640
و جاوا اسکریپت را
499
00:22:30,640 –> 00:22:32,860
بعد از غیرفعال کردن جاوا اسکریپت غیرفعال میکنیم.
500
00:22:32,860 –> 00:22:35,020
501
00:22:35,020 –> 00:22:36,870
502
00:22:36,870 –> 00:22:39,820
حالا اگر همه چیز را در داخل جدول اسکرول تجزیه کنم، اکنون
503
00:22:39,820 –> 00:22:42,400
فقط یک جدول
504
00:22:42,400 –> 00:22:44,590
دارم یا حداقل یکی از آن ها را می توانم
505
00:22:44,590 –> 00:22:48,070
با یک نگاه سریع متوجه شوم که تفاوت
506
00:22:48,070 –> 00:22:49,809
بین فعال بودن جاوا اسکریپت است و
507
00:22:49,809 –> 00:22:51,970
نه اینکه صرفاً چیزهایی را تجزیه کند که چیزها را می
508
00:22:51,970 –> 00:22:53,919
سازد. بسیار متفاوت است، اگرچه
509
00:22:53,919 –> 00:22:55,570
مرورگر وب من تقریباً یکسان به نظر می رسد،
510
00:22:55,570 –> 00:22:57,669
من می خواهم ادامه دهم و جاوا اسکریپت را مجدداً فعال کنم،
511
00:22:57,669 –> 00:22:59,470
اما فقط درک کنید
512
00:22:59,470 –> 00:23:01,270
که دلیل کاری است که می
513
00:23:01,270 –> 00:23:05,080
خواهم انجام دهم، بنابراین دستور shift P را بدهید و
514
00:23:05,080 –> 00:23:08,650
enable JavaScript you را تایپ کنید. نه لو nger به
515
00:23:08,650 –> 00:23:10,860
آن نیاز دارد و من فقط آن صفحه را بازخوانی میکنم،
516
00:23:10,860 –> 00:23:12,039
517
00:23:12,039 –> 00:23:16,840
بنابراین دوباره میتوانم ردیفها را با TR فایل کنم
518
00:23:16,840 –> 00:23:18,490
یا حداقل امیدوارم بتوانم، بنابراین ادامه میدهم
519
00:23:18,490 –> 00:23:20,620
و ردیفها را چاپ میکنم، بیایید جلو برویم
520
00:23:20,620 –> 00:23:22,960
و از پوسته تعاملی خارج شویم.
521
00:23:22,960 –> 00:23:26,169
و دوباره آن را اجرا کنید و یک دسته
522
00:23:26,169 –> 00:23:28,870
از ردیفهای عنصر جدول در اینجا وجود دارد، بنابراین در
523
00:23:28,870 –> 00:23:31,179
حال حاضر فهرستی از عناصر دارم که میخواهم
524
00:23:31,179 –> 00:23:34,120
به آن پایان دهم، فهرستی از لیستها است، بنابراین
525
00:23:34,120 –> 00:23:36,700
بیایید ادامه دهیم و برای
526
00:23:36,700 –> 00:23:39,700
سطر در ردیفها چاپ کنیم. ادامه دهید و
527
00:23:39,700 –> 00:23:42,400
هر سطر جداگانه را چاپ کنید و
528
00:23:42,400 –> 00:23:43,990
البته این در واقع عنصر است، بنابراین من ادامه میدهم
529
00:23:43,990 –> 00:23:46,059
و متن را
530
00:23:46,059 –> 00:23:47,679
مانند آنچه در اینجا انجام دادم چاپ میکنم و از شر آن خلاص میشوم
531
00:23:47,679 –> 00:23:49,120
که در واقع ما به آن نیاز نداریم
532
00:23:49,120 –> 00:23:53,260
طولانی تر و بیایید خارج شویم و
533
00:23:53,260 –> 00:23:57,700
دوباره آن خراش را اجرا کنیم و متوجه شویم که به
534
00:23:57,700 –> 00:23:59,980
همان چیزی که قبلاً دیده بودیم برمی گردد، زمانی که فقط یک
535
00:23:59,980 –> 00:24:03,190
میز کامل بود، که خوب است،
536
00:24:03,190 –> 00:24:05,950
در واقع بسیار به چیزی که نیاز داریم نزدیک می شود،
537
00:24:05,950 –> 00:24:08,080
اما اگر به بالای صفحه اسکرول کنم،
538
00:24:08,080 –> 00:24:10,030
بیایید ادامه دهید و این را کمی گسترش دهید
539
00:24:10,030 –> 00:24:13,419
تا به بالای صفحه بروید، چیزی که من می
540
00:24:13,419 –> 00:24:17,559
بینم اولین مورد است به نظر می رسد ردیف سرصفحه من باشد
541
00:24:17,559 –> 00:24:20,770
خوب است، بنابراین این را اسکرول کنید یا آن را تجزیه کنید
542
00:24:20,770 –> 00:24:24,620
تا چیزی که من می گویم این است
543
00:24:24,620 –> 00:24:27,440
که من فقط حدس های تحصیلی می
544
00:24:27,440 –> 00:24:31,010
کنم اینجا رز صفر است که سرصف من خواهد بود
545
00:24:31,010 –> 00:24:33,140
و سپس می خواهم
546
00:24:33,140 –> 00:24:35,750
تمام موارد را تکرار کنم موارد دیگر بعد از صفر
547
00:24:35,750 –> 00:24:38,600
تا یک و فراتر از این راهی برای انجام
548
00:24:38,600 –> 00:24:42,590
این کار است، بنابراین اگر من این را اجرا کنم باید
549
00:24:42,590 –> 00:24:45,080
ردیف سرصفحه من را به من بدهد و سپس فقط
550
00:24:45,080 –> 00:24:47,570
چک های ردیف واقعی را که
551
00:24:47,570 –> 00:24:50,210
به آن نیاز دارم چاپ کنم تا این موضوع خوب و واضح باشد. ادامه میدهم
552
00:24:50,210 –> 00:24:52,370
و آن پایتون را میبندم و
553
00:24:52,370 –> 00:24:55,670
یک ترمینال جدید باز میکنم و مطمئن
554
00:24:55,670 –> 00:24:57,950
میشویم که در روز درستی هستم،
555
00:24:57,950 –> 00:25:01,280
بنابراین به روز دوازدهم برمیگردیم و پایتون سه را انجام میدهیم
556
00:25:01,280 –> 00:25:06,260
– من PI را حذف کردم، بنابراین این بار
557
00:25:06,260 –> 00:25:08,179
نباید اگر همه کارها را به درستی انجام دادم، آن هدر را ببینید،
558
00:25:08,179 –> 00:25:10,450
بنابراین به بالا اسکرول میکنم و
559
00:25:10,450 –> 00:25:14,270
فقط اولین ردیف را نمیبینم
560
00:25:14,270 –> 00:25:17,570
که تصادفاً یک عدد دارد،
561
00:25:17,570 –> 00:25:20,450
زیرا بر اساس رتبهبندی درست است
562
00:25:20,450 –> 00:25:21,710
که بر اساس همه این
563
00:25:21,710 –> 00:25:25,760
دادههای دیگر است. اکنون ردیفهای ردیفهایم را
564
00:25:25,760 –> 00:25:28,070
دارم، اما فقط باید آنها را به
565
00:25:28,070 –> 00:25:30,170
چیزی تبدیل کنم، به این معنی که من فقط به
566
00:25:30,170 –> 00:25:32,750
t نیاز دارم دوباره کمی نزدیکتر به داده ها نگاه
567
00:25:32,750 –> 00:25:36,470
کنید، بنابراین اولین موردی که می خواهم آن
568
00:25:36,470 –> 00:25:38,450
را تجزیه کنم هدر است، بنابراین این
569
00:25:38,450 –> 00:25:41,480
هدر را در اینجا و در این هدر یا این
570
00:25:41,480 –> 00:25:45,530
TR بررسی کنید و البته من به طور بالقوه می توانم
571
00:25:45,530 –> 00:25:48,080
از خاموش بودن جاوا اسکریپت استفاده کنم اما این کار را نمی کنم.
572
00:25:48,080 –> 00:25:51,320
فکر نمیکنم در حال حاضر به دلیل
573
00:25:51,320 –> 00:25:53,960
ساختار کلی hTML به آن نیاز داشته
574
00:25:53,960 –> 00:25:57,860
باشم، بنابراین من T TR و th را دارم، بنابراین هر
575
00:25:57,860 –> 00:26:00,830
ستون سرصفحه را دارم و سپس اگر
576
00:26:00,830 –> 00:26:02,330
کمی به پایین در داخل عناصر اسکرول
577
00:26:02,330 –> 00:26:06,440
کنیم، به آن میرسیم. TRS در
578
00:26:06,440 –> 00:26:09,230
اینجا نیز وجود دارد، اما توجه داشته باشید که این یکی
579
00:26:09,230 –> 00:26:11,510
میگوید display:هیچکدام، پس اگر من از شر
580
00:26:11,510 –> 00:26:13,340
آن عنصر خلاص شوم، شما چه میدانید که
581
00:26:13,340 –> 00:26:16,100
ستونها به آنجا برگشتهاند، بنابراین این همان
582
00:26:16,100 –> 00:26:17,960
ستونی است که ما داریم روی آن کار میکنیم.
583
00:26:17,960 –> 00:26:19,790
حتی اگر اینطور به نظر نمی رسد
584
00:26:19,790 –> 00:26:21,830
یا حتی اگر گیج کننده است، نگران نباشید،
585
00:26:21,830 –> 00:26:27,590
بنابراین این TR دارای TD است، بنابراین معمولاً در
586
00:26:27,590 –> 00:26:29,450
عناصر HTML شما ردیف سرصفحه
587
00:26:29,450 –> 00:26:32,570
را خواهید داشت که ما th را در ستون جدول خواهیم داشت و
588
00:26:32,570 –> 00:26:35,720
سپس TD را مانند یک سلول جدول هر
589
00:26:35,720 –> 00:26:37,760
سلول برای هر ردیف معین
590
00:26:37,760 –> 00:26:41,930
خوب است، به طوری که به معنای طولانی است
591
00:26:41,930 –> 00:26:46,460
که می گوییم ستون ها برابر با نقطه Rho است. TD را پیدا
592
00:26:46,460 –> 00:26:48,700
کنم و اکنون می توانم ادامه دهم و چاپ کنم،
593
00:26:48,700 –> 00:26:54,790
بیایید جلوتر برویم و در تماس ها بگوییم 4x.
594
00:26:54,790 –> 00:26:59,980
595
00:26:59,980 –> 00:27:02,600
596
00:27:02,600 –> 00:27:07,250
597
00:27:07,250 –> 00:27:09,590
تکرار یا عددی که
598
00:27:09,590 –> 00:27:12,400
در آن قرار دارد را دریافت کنید، مثل اینکه در چه موقعیتی
599
00:27:12,400 –> 00:27:15,620
در این ستون قرار دارد، بنابراین من می توانم کاری
600
00:27:15,620 –> 00:27:20,960
به نام enumerate انجام دهم و enumerate
601
00:27:20,960 –> 00:27:24,490
آن را به آن تبدیل می کند،
602
00:27:24,490 –> 00:27:28,160
تکرار واقعی آن و همچنین X را به من می دهد تا بتوانم
603
00:27:28,160 –> 00:27:31,880
بگویم من یا هر تکرار
604
00:27:31,880 –> 00:27:35,300
واقعی دیگر، چیز جالبی است که
605
00:27:35,300 –> 00:27:35,750
بدانیم،
606
00:27:35,750 –> 00:27:40,010
اما برای ردیف در 4x و ردیف ما، میتوانید
607
00:27:40,010 –> 00:27:42,260
همان عبارت چاپی را انجام دهید و سپس
608
00:27:42,260 –> 00:27:45,050
میتوانید چیزی شبیه به I برابر با 0
609
00:27:45,050 –> 00:27:49,550
و سپس I به علاوه برابر با 1 و سپس
610
00:27:49,550 –> 00:27:53,360
I و سپس X right را چاپ
611
00:27:53,360 –> 00:27:55,970
میکنیم، بنابراین این دقیقاً در اینجا همان کار
612
00:27:55,970 –> 00:27:58,040
را انجام میدهد، فقط از یک
613
00:27:58,040 –> 00:28:00,860
تابع داخلی دیگر به نام enumerate ok استفاده میکند، بنابراین حالا که
614
00:28:00,860 –> 00:28:02,270
من متوجه شدم که اجازه دهید به جلو برویم و
615
00:28:02,270 –> 00:28:05,750
خارج شویم، بنابراین این باید به من بدهد. هر ردیفی
616
00:28:05,750 –> 00:28:07,940
که شاید بخواهیم
617
00:28:07,940 –> 00:28:09,890
ردیف ها را هم برشماریم اما باید به من ea بدهد
618
00:28:09,890 –> 00:28:12,020
سطر ch و سپس
619
00:28:12,020 –> 00:28:13,550
ستونهای آن سطر را با
620
00:28:13,550 –> 00:28:17,420
تکرارهایشان به من میدهد، بنابراین ما به اینجا میرویم، بنابراین
621
00:28:17,420 –> 00:28:19,430
من این را باز میکنم و متوجه میشوم که
622
00:28:19,430 –> 00:28:20,990
اکنون عناصر آن متن نیستند،
623
00:28:20,990 –> 00:28:22,850
زیرا چیزها را کمی متمایز میکند.
624
00:28:22,850 –> 00:28:25,160
در اینجا اما
625
00:28:25,160 –> 00:28:29,000
0 1 2 3 4 5 6 به من بسیار جالب میدهد،
626
00:28:29,000 –> 00:28:32,890
بنابراین نکته بعدی البته این است که
627
00:28:32,890 –> 00:28:36,860
آن ستونها را به متن تبدیل کنم تا X dot
628
00:28:36,860 –> 00:28:39,560
txt و شاید باید
629
00:28:39,560 –> 00:28:41,120
با گفتن
630
00:28:41,120 –> 00:28:47,060
تماس مانند ستون، این موضوع را کمی واضحتر کنیم. و دوباره از این خارج شوید،
631
00:28:47,060 –> 00:28:49,370
اوه
632
00:28:49,370 –> 00:28:54,650
، دوباره آن را اجرا کنید و اکنون ما آن مقادیر واقعی را می بینیم،
633
00:28:54,650 –> 00:28:58,070
بنابراین یک مکان آرام قسمت دوم به
634
00:28:58,070 –> 00:29:00,800
نظر می رسد که من صد و شصت و
635
00:29:00,800 –> 00:29:02,270
سه دلار ساخته ام، بنابراین بیایید به کروم برویم
636
00:29:02,270 –> 00:29:05,840
و به پایین یک
637
00:29:05,840 –> 00:29:08,150
مکان آرام قسمت دوم بروید. صد و شصت و
638
00:29:08,150 –> 00:29:11,059
سه دلار و برای آن خوب بود و
639
00:29:11,059 –> 00:29:13,580
چه شماره جاده ای بود خوب
640
00:29:13,580 –> 00:29:15,890
رتبه 32 را دارد که می توانیم
641
00:29:15,890 –> 00:29:18,590
از اینجا بگوییم تا آخرین مورد
642
00:29:18,590 –> 00:29:21,010
بسیار عالی بود
643
00:29:21,010 –> 00:29:25,130
پس با این دانش جدید اکنون می توانیم
644
00:29:25,130 –> 00:29:29,240
خود نام سرصفحه ها را دریافت کنید o من
645
00:29:29,240 –> 00:29:30,800
فقط میروم و این کار را انجام میدهم و
646
00:29:30,800 –> 00:29:36,830
میگویم نامهای سرصفحه برابر با 2x متن نقطه برای
647
00:29:36,830 –> 00:29:41,960
X در سرصفحه است و این واقعاً ردیف سرصفحه است،
648
00:29:41,960 –> 00:29:46,480
بنابراین بیایید آن را ردیف سرصفحه بنامیم
649
00:29:46,480 –> 00:29:50,030
خوب است، بنابراین این ردیف سرصفحه است و اکنون
650
00:29:50,030 –> 00:29:53,690
در تمام موارد تکرار میکنیم. ستونها، بیایید به
651
00:29:53,690 –> 00:29:56,390
جلو برویم و این کار را انجام دهیم، بنابراین من تمام
652
00:29:56,390 –> 00:29:59,150
ردیفهایم را دارم، همه ستونها
653
00:29:59,150 –> 00:30:01,429
واقعاً جالب اینجاست، بنابراین جلوتر میروم
654
00:30:01,429 –> 00:30:05,570
و میگویم دادههای ردیف برابر با یک لیست خالی است
655
00:30:05,570 –> 00:30:08,210
و اکنون کاری که من انجام خواهم داد فقط do row
656
00:30:08,210 –> 00:30:14,720
data dot append call dot txt بسیار خوب، بنابراین من می
657
00:30:14,720 –> 00:30:15,679
خواهم برای لحظه ای از شر این عبارات چاپی خلاص شوم
658
00:30:15,679 –> 00:30:16,910
659
00:30:16,910 –> 00:30:19,760
و با این داده های ردیف، ادامه می دهم
660
00:30:19,760 –> 00:30:22,130
و لیست دیگری به نام داده های جدول در اینجا ایجاد می کنم
661
00:30:22,130 –> 00:30:26,020
و آن را برابر با یک خالی قرار می دهم. لیست کنید
662
00:30:26,020 –> 00:30:29,900
بنابراین هر یک به یاد داشته باشید که من یک لیست از
663
00:30:29,900 –> 00:30:37,240
لیست ها درست می کنم، بنابراین داده های جدول، داده های ردیف را اضافه
664
00:30:37,240 –> 00:30:40,850
می کنم و در نهایت می خواهم ادامه دهم
665
00:30:40,850 –> 00:30:43,910
و چاپ کنم که داده های جدول
666
00:30:43,910 –> 00:30:46,880
چیست، در واقع این
667
00:30:46,880 –> 00:30:51,770
داده های جدول را در اینجا اعلام می کنم و همچنین
668
00:30:51,770 –> 00:30:55,160
یک لیست خالی برای نام سرصفحه ها اعلام خواهم کرد، بنابراین بیایید
669
00:30:55,160 –> 00:30:56,390