در این مطلب، ویدئو آموزش خراش وب پایتون – CraigsList با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 00:22:48
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:00,000 –> 00:00:01,740
سلام، تام است و امروز به شما نشان خواهم داد که
2
00:00:01,740 –> 00:00:04,170
چگونه به سرعت داده ها را از
3
00:00:04,170 –> 00:00:08,250
وب سایت ایستا که Craigslist است پاک کنید، بنابراین من به
4
00:00:08,250 –> 00:00:12,179
مقداری داده برای ویدیوهای آینده خود نیاز داشتم، بنابراین مجبور شدم آن
5
00:00:12,179 –> 00:00:13,860
را پاک کنم و فکر کردم شاید
6
00:00:13,860 –> 00:00:16,650
برای شما جالب باشد که بدانید چگونه می توانیم
7
00:00:16,650 –> 00:00:19,920
انجام دهیم. این با استفاده از Python بسیار خوب است، بنابراین در ابتدا
8
00:00:19,920 –> 00:00:24,600
بیایید وب سایتی را پیدا کنیم که می خواهیم آن را خراش دهیم
9
00:00:24,600 –> 00:00:27,320
و در مورد ما Craigslist است که من
10
00:00:27,320 –> 00:00:30,090
منطقه خلیج سانفرانسیسکو را انتخاب کردم و
11
00:00:30,090 –> 00:00:34,469
مانند ما آزمایش کردم زیرا این چیزی است
12
00:00:34,469 –> 00:00:38,940
که برای من جالب است و
13
00:00:38,940 –> 00:00:41,610
وقتی با وب سایتی در این مورد شروع می کنیم.
14
00:00:41,610 –> 00:00:44,250
اگر لیستی از عناصر در این
15
00:00:44,250 –> 00:00:48,210
وب سایت وجود دارد، بسیار مهم
16
00:00:48,210 –> 00:00:50,820
است که بدانید ساختار صفحه وب چیست
17
00:00:50,820 –> 00:00:58,100
و برای اینکه بفهمیم می توانیم از Inspect استفاده کنیم و
18
00:00:58,100 –> 00:00:59,820
مثل همیشه
19
00:00:59,820 –> 00:01:02,280
بله، شما فکر می کنید سنجش بازرسی روش خوبی
20
00:01:02,280 –> 00:01:09,030
برای یافتن اشیاء است و این
21
00:01:09,030 –> 00:01:14,159
یک ردیف نتیجه خاص، بله خوب است، بنابراین
22
00:01:14,159 –> 00:01:16,710
به نظر می رسد که ساختار
23
00:01:16,710 –> 00:01:20,850
Craigslist بسیار آسان است و
24
00:01:20,850 –> 00:01:24,720
به دو قسمت تقسیم می شود، بنابراین عنصری که
25
00:01:24,720 –> 00:01:26,640
برای ما جالب است، نمی دانم آیا می توانم اندازه را افزایش دهم یا نه،
26
00:01:26,640 –> 00:01:29,430
متاسفم. این کار
27
00:01:29,430 –> 00:01:29,729
28
00:01:29,729 –> 00:01:32,790
را انجام ندادم، قبلاً این کار را انجام ندادم، بنابراین
29
00:01:32,790 –> 00:01:35,280
شیئی که برای ما واقعاً جالب
30
00:01:35,280 –> 00:01:39,509
است این است که این UL با ردیفهای کلاس است
31
00:01:39,509 –> 00:01:43,979
و یک لیست طولانی از همه عناصر
32
00:01:43,979 –> 00:01:48,299
وجود دارد که پیشنهادهایی
33
00:01:48,299 –> 00:01:54,810
برای ما و هر پیشنهاد جالب هستند. در
34
00:01:54,810 –> 00:02:00,180
این شی li با نتیجه پیچیده شده است
35
00:02:00,180 –> 00:02:04,049
– کلاس ردیف و داده های زیادی در آن وجود دارد،
36
00:02:04,049 –> 00:02:07,320
بنابراین شاید
37
00:02:07,320 –> 00:02:10,979
بیایید با تجزیه آن شروع کنیم – برای انجام
38
00:02:10,979 –> 00:02:14,129
این کار – امروز از
39
00:02:14,129 –> 00:02:16,080
نوت بوک مشتری استفاده خواهیم کرد زیرا این
40
00:02:16,080 –> 00:02:19,920
ساده ترین راه برای بازی است و
41
00:02:19,920 –> 00:02:23,129
حداقل به نظر من، کد پایتون را ارسال کنید، بنابراین در
42
00:02:23,129 –> 00:02:27,200
ابتدا باید درخواست ها و
43
00:02:27,200 –> 00:02:31,799
درخواست ها را وارد کنیم، یک کتابخانه هنری
44
00:02:31,799 –> 00:02:33,959
در دنیای پایتون است که شما از آن برای
45
00:02:33,959 –> 00:02:37,500
ایجاد درخواست های HTTP استفاده می کنید و دومین چیزی
46
00:02:37,500 –> 00:02:40,170
که به آن نیاز داریم زیبایی است. soup
47
00:02:40,170 –> 00:02:42,810
beautiful soup یک کتابخانه شناخته شده است
48
00:02:42,810 –> 00:02:45,810
که ما را قادر می سازد اشیاء XML و HTML را تجزیه و تحلیل کنیم
49
00:02:45,810 –> 00:02:49,620
و در مورد ما
50
00:02:49,620 –> 00:02:51,629
محتوای وب سایت را دریافت می کنیم و
51
00:02:51,629 –> 00:02:54,620
باید آن را تجزیه و با آن بازی کنیم،
52
00:02:54,620 –> 00:03:12,799
بنابراین قطعاً باید آن را وارد کنیم. باشه
53
00:03:12,799 –> 00:03:16,889
و بعد من ما باید URL را تعریف
54
00:03:16,889 –> 00:03:20,190
کنیم که میخواهیم آن را خراش دهیم و در
55
00:03:20,190 –> 00:03:28,500
مورد ما خیلی خوب است و فقط
56
00:03:28,500 –> 00:03:30,269
باید محتویات را واکشی کنیم، بنابراین در
57
00:03:30,269 –> 00:03:35,510
مورد ما اجازه دهید آن را به شی صفحه واکشی کنیم و
58
00:03:35,510 –> 00:03:42,840
درخواست دریافت URL را بدهیم بله همین است
59
00:03:42,840 –> 00:03:48,419
به طور کلی میتوانیم کد را اجرا کنیم و شی صفحه ما
60
00:03:48,419 –> 00:03:51,780
قبلاً حاوی دادههای HTML است
61
00:03:51,780 –> 00:03:57,900
که میتوانیم محتوای صفحه را داشته باشیم و میتوانیم آن را چاپ
62
00:03:57,900 –> 00:04:03,680
کنیم و همانطور که میبینید این یک
63
00:04:03,739 –> 00:04:08,760
تکه بزرگ از کد است و در حال حاضر
64
00:04:08,760 –> 00:04:12,239
برای ما مفید نیست. اما
65
00:04:12,239 –> 00:04:14,940
در حال حاضر ما از سوپ زیبا استفاده می کنیم
66
00:04:14,940 –> 00:04:19,039
تا کل این شی را به برخی از
67
00:04:19,039 –> 00:04:24,930
داده های ساختاری قابل خواندن تجزیه کنیم، بنابراین بیایید
68
00:04:24,930 –> 00:04:25,970
آن را
69
00:04:25,970 –> 00:04:33,560
بنامیم شاید سوپ برابر با شی باشد و
70
00:04:33,560 –> 00:04:38,390
سپس باید دو پارامتر را ارائه دهیم
71
00:04:38,390 –> 00:04:44,240
، اولی به روز شده ای است که می
72
00:04:44,240 –> 00:04:46,900
خواهیم تجزیه کنیم. و دومی
73
00:04:46,900 –> 00:04:53,570
تجزیه کننده HTML تجزیه کننده است، بنابراین این یکی
74
00:04:53,570 –> 00:04:57,500
از چهار تجزیه کننده ممکن برای کد HTML است
75
00:04:57,500 –> 00:05:01,100
و احتمالاً سریعترین و
76
00:05:01,100 –> 00:05:03,110
ساده ترین برای استفاده است مانند موردی که
77
00:05:03,110 –> 00:05:06,860
واقعاً به طور پیش فرض مشکلی ندارد، بنابراین
78
00:05:06,860 –> 00:05:09,740
ما سوپ و سطح خود را فقط
79
00:05:09,740 –> 00:05:12,550
داده های ساختاری ایجاد کردیم و که از Craigslist واکشی شد
80
00:05:12,550 –> 00:05:16,580
و سپس میتوانیم
81
00:05:16,580 –> 00:05:19,160
شی نتایج ایجاد کنیم و در حال حاضر از
82
00:05:19,160 –> 00:05:28,280
سوپ برای پیدا کردن اشیایی مانند یک شی استفاده میکنیم تا
83
00:05:28,280 –> 00:05:31,190
با ردیفهای کلاس صادق باشیم، زیرا
84
00:05:31,190 –> 00:05:39,919
میخواهیم کل لیست را به
85
00:05:39,919 –> 00:05:47,410
این شی وارد کنیم که ردیفهای دنبالهای هستند و
86
00:05:47,410 –> 00:06:00,050
ما میخواهیم می توانید آن را چاپ کنید، بسیار خوب است،
87
00:06:00,050 –> 00:06:04,810
بنابراین همانطور که می بینید ما کل محتوایی را داریم
88
00:06:04,810 –> 00:06:09,020
که در این تگ گنجانده شده است UL
89
00:06:09,020 –> 00:06:13,070
با ردیف های کلاس، این دقیقاً همان
90
00:06:13,070 –> 00:06:16,940
محتوایی است که ما با استفاده
91
00:06:16,940 –> 00:06:20,540
از بازرس وب سایت توانستیم پیدا کنیم و در حال حاضر
92
00:06:20,540 –> 00:06:23,630
چه چیزی برای ما جالب است. این است که همه
93
00:06:23,630 –> 00:06:26,390
اشیاء را با نتیجه بدست آوریم
94
00:06:26,390 –> 00:06:29,660
– نام کلاس ردیف و سپس می
95
00:06:29,660 –> 00:06:31,419
توانیم کمی بیشتر با آنها بازی کنیم
96
00:06:31,419 –> 00:06:36,440
بنابراین در مرحله بعد اجازه دهید یادداشت های خود را اسکرول کنم
97
00:06:36,440 –> 00:06:38,930
زیرا من نیز مانند همیشه
98
00:06:38,930 –> 00:06:39,560
99
00:06:39,560 –> 00:06:42,290
برای خودم یادداشت هایی آماده کردم تا شما را از دست ندهم.
100
00:06:42,290 –> 00:06:47,630
اشکال زدایی زمان، بنابراین چیزی که ما در حال حاضر به آن نیاز داریم این است
101
00:06:47,630 –> 00:06:57,410
که عناصر ماشین را بدست آوریم، بله، می توانیم
102
00:06:57,410 –> 00:07:01,310
آن را نور مناسب به این شکل بنامیم و در
103
00:07:01,310 –> 00:07:04,669
نتایج، اکنون با ما کار
104
00:07:04,669 –> 00:07:08,570
خواهیم کرد، بنابراین فقط روی این محتوا
105
00:07:08,570 –> 00:07:10,970
کار خواهیم کرد زیرا واقعاً نیازی به این کار نداریم. پارس
106
00:07:10,970 –> 00:07:13,280
و در کل وب سایت یک بار دیگر
107
00:07:13,280 –> 00:07:15,200
بخشی را داریم که برای ما جالب است و می
108
00:07:15,200 –> 00:07:16,850
خواهیم از این قسمت خاص داده هایی را بدست آوریم.
109
00:07:16,850 –> 00:07:23,570
110
00:07:23,570 –> 00:07:32,440
111
00:07:32,500 –> 00:07:42,650
112
00:07:42,650 –> 00:07:47,479
اگر بدانیم که این
113
00:07:47,479 –> 00:07:49,669
یک آرایه خواهد بود، میتوانیم آن را تکرار کنیم، بنابراین
114
00:07:49,669 –> 00:08:02,410
برای ماشین LM در مردان، المانهای آلن
115
00:08:02,410 –> 00:08:06,710
واقعاً خوب به نظر نمیرسند، میتوانیم فقط
116
00:08:06,710 –> 00:08:15,520
آن را چاپ کنیم، برای مثال فقط متن
117
00:08:15,610 –> 00:08:21,500
و بله، خیلی بهتر به نظر میرسد،
118
00:08:21,500 –> 00:08:24,260
119
00:08:24,260 –> 00:08:30,160
بنابراین هر ماشینی خوب است. LM دقیقاً همین داده است و
120
00:08:30,160 –> 00:08:34,099
برای ما چیزهای مهم این است که
121
00:08:34,099 –> 00:08:36,979
122
00:08:36,979 –> 00:08:43,559
قطعاً قیمت ممکن است URL باشد
123
00:08:43,559 –> 00:08:46,709
که بعداً برای دریافت جزئیات این
124
00:08:46,709 –> 00:08:54,600
پیشنهاد خاص استفاده می شود و شاید برخی
125
00:08:54,600 –> 00:09:04,170
نام ها بله، بنابراین احتمالاً اجازه دهید بررسی کنم این
126
00:09:04,170 –> 00:09:08,550
برای شما جالب خواهد بود. خیلی خوب است، شاید
127
00:09:08,550 –> 00:09:11,670
بیایید با قیمت شروع کنیم، زیرا
128
00:09:11,670 –> 00:09:16,199
این ساده ترین
129
00:09:16,199 –> 00:09:19,740
قیمت خواهد بود، بنابراین قیمت برای یافتن قیمتی است که ما باید آن را پیدا
130
00:09:19,740 –> 00:09:22,740
کنیم تا شیئی را به دست آوریم که محدوده با
131
00:09:22,740 –> 00:09:27,600
نام کلاس است، قیمت نتیجه خوب است، بنابراین اجازه دهید
132
00:09:27,600 –> 00:09:31,529
من شاید فقط قیمت را کپی کنم کد و نوع
133
00:09:31,529 –> 00:09:35,399
از قبل آماده شده برای صرفه جویی در زمان، فقط
134
00:09:35,399 –> 00:09:40,110
آن را نظر دهید و قیمت L M
135
00:09:40,110 –> 00:09:44,279
عنصر تگ span با
136
00:09:44,279 –> 00:09:48,509
نام کلاس نتیجه قیمت است و این عنصر قیمت
137
00:09:48,509 –> 00:09:54,019
است و در حال حاضر می
138
00:09:54,019 –> 00:10:01,279
توانیم متن عنصر قیمت را چاپ کنیم و می توانیم آن را از بین ببریم. اما
139
00:10:01,279 –> 00:10:05,040
احتمالاً هیچ ایرادی وجود ندارد،
140
00:10:05,040 –> 00:10:08,309
بله، به نظر می رسد بله، ما همچنین می توانیم
141
00:10:08,309 –> 00:10:12,029
خط خالی را چاپ کنیم، فقط آنها را به روشی بهتر از هم جدا کنیم،
142
00:10:12,029 –> 00:10:12,540
143
00:10:12,540 –> 00:10:14,910
بنابراین به نظر می رسد که بتوانیم
144
00:10:14,910 –> 00:10:17,610
قیمت هایی را که همه آنها حاوی
145
00:10:17,610 –> 00:10:20,429
علامت دلار هستند واکشی کنیم که می توانیم بعداً آن را کاهش دهیم. اما
146
00:10:20,429 –> 00:10:24,170
اگر میخواهید دادهها را از کشورهای مختلف واکشی کنید،
147
00:10:24,170 –> 00:10:27,120
شاید ارز
148
00:10:27,120 –> 00:10:29,040
ممکن است برای ما مهم باشد
149
00:10:29,040 –> 00:10:31,769
، عنصر بعدی که برای
150
00:10:31,769 –> 00:10:36,660
ما جالب است URL است و به نظر میرسد که
151
00:10:36,660 –> 00:10:38,759
اگر میخواهیم URL را دریافت کنیم، فقط باید
152
00:10:38,759 –> 00:10:43,170
عنصر a را دریافت کنیم. با
153
00:10:43,170 –> 00:10:47,129
گالری تصاویر نتیجه نام کلاس و البته
154
00:10:47,129 –> 00:10:49,939
من آماده کرده ام که
155
00:10:50,309 –> 00:10:59,099
اوه معلوم شد که
156
00:10:59,099 –> 00:11:04,139
فهمیدم راه ساده تری برای انجام این کار وجود دارد، زیرا
157
00:11:04,139 –> 00:11:08,119
احتمالاً به گالری منتهی می
158
00:11:08,149 –> 00:11:11,159
شود نه این همان است، بنابراین ما می
159
00:11:11,159 –> 00:11:14,789
توانیم یک عنصر با
160
00:11:14,789 –> 00:11:17,309
گالری تصویر نتیجه نام کلاس و سپس H
161
00:11:17,309 –> 00:11:23,069
ref را دریافت کنید بله، ما در واقع میتوانیم این کار را انجام دهیم، بنابراین
162
00:11:23,069 –> 00:11:28,849
ممکن است مقداری کدگذاری کوتاه مدت،
163
00:11:28,849 –> 00:11:38,220
بنابراین URL، URL شاید URL،
164
00:11:38,220 –> 00:11:48,629
عنصر پیدا کردن آلوم خودرو با نوع A باشد و
165
00:11:48,629 –> 00:11:55,759
کلاس برابر است با نتیجه گالری تصاویر بسیار
166
00:11:55,759 –> 00:12:06,389
خوب است، شما باید آن
167
00:12:06,389 –> 00:12:13,519
عنصر URL را تغییر دهید و بیایید URL را چاپ
168
00:12:1