در این مطلب، ویدئو یک کلاس Web Scraper در Python and requests-html ایجاد کنید با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 00:07:30
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:00,000 –> 00:00:01,760
بسیار خوب، پس اگر در نوشتن
2
00:00:01,760 –> 00:00:03,280
اسکراپرهای اولیه مهارت دارید و می خواهید آن را به
3
00:00:03,280 –> 00:00:04,640
سطح بعدی ببرید، این ویدیو ممکن است
4
00:00:04,640 –> 00:00:06,240
به شما کمک کند کاری که ما می
5
00:00:06,240 –> 00:00:07,520
خواهیم انجام دهیم این است که اطلاعاتی را که من در
6
00:00:07,520 –> 00:00:08,639
اینجا به دست آورده ام استفاده می کنیم. و ما می خواهیم یک
7
00:00:08,639 –> 00:00:11,040
کلاس اسکراپر بنویسیم که بتوانیم آن را به
8
00:00:11,040 –> 00:00:12,639
قسمت های دیگر پروژه خود وارد کنیم، بنابراین آنچه که من در
9
00:00:12,639 –> 00:00:14,559
اینجا دارم، فقط یک اسکراپر اولیه است و
10
00:00:14,559 –> 00:00:16,480
اگر این را اجرا کنم، می بینید که ما
11
00:00:16,480 –> 00:00:18,720
برخی از اطلاعات را دریافت می کنیم. اینجا
12
00:00:18,720 –> 00:00:20,800
13
00:00:20,800 –> 00:00:23,519
قیمت و نام این مورد را ببینید، بنابراین کاری
14
00:00:23,519 –> 00:00:25,840
که میخواهیم انجام دهیم این است که میخواهیم
15
00:00:25,840 –> 00:00:27,599
با استفاده از این اطلاعات یک کلاس ایجاد کنیم که بتوانیم آن را
16
00:00:27,599 –> 00:00:29,599
به پروژه خود در جای دیگری وارد کنیم، بنابراین
17
00:00:29,599 –> 00:00:30,480
کاری که من میخواهم انجام دهم این است. من می خواهم
18
00:00:30,480 –> 00:00:33,360
این را در یک فایل جدید کپی کنم تا این زیبا
19
00:00:33,360 –> 00:00:34,640
و بزرگ شود و ما می خواهیم
20
00:00:34,640 –> 00:00:36,559
کلمه class را بنویسیم زیرا در حال ایجاد یک کلاس جدید هستیم،
21
00:00:36,559 –> 00:00:38,719
من فقط می خواهم این یک
22
00:00:38,719 –> 00:00:40,640
scraper را صدا بزنم
23
00:00:40,640 –> 00:00:42,719
اکنون باید مقداردهی اولیه خود را داشته باشیم.
24
00:00:42,719 –> 00:00:44,239
تابع کاری که این قرار است انجام دهد این است که
25
00:00:44,239 –> 00:00:46,559
هر بار که این کلاس را فراخوانی می کنیم،
26
00:00:46,559 –> 00:00:48,640
اینها را مقداردهی اولیه می کند، بنابراین
27
00:00:48,640 –> 00:00:51,520
در مورد ما این متغیرها را برای ما تنظیم کنید، بنابراین
28
00:00:51,520 –> 00:00:53,440
ما میخواهیم ابتدا آن را دوتایی زیر خط انجام دهیم
29
00:00:53,440 –> 00:00:56,239
و pycharm آن را برای ما پر میکند
30
00:00:56,239 –> 00:00:57,280
که یکی از دلایلی است که من
31
00:00:57,280 –> 00:00:59,199
اکنون نمودار دایرهای را خیلی دوست دارم، زیرا
32
00:00:59,199 –> 00:01:02,160
در کلاس خود هستیم که نیاز داریم. برای ارجاع به خود
33
00:01:02,160 –> 00:01:03,760
تقریباً با هر کاری که انجام می دهیم، بنابراین می
34
00:01:03,760 –> 00:01:05,840
خواهم بگویم که جلسه خود نقطه
35
00:01:05,840 –> 00:01:07,280
36
00:01:07,280 –> 00:01:10,320
برابر با جلسه html است،
37
00:01:10,320 –> 00:01:12,720
بنابراین می توانید ببینید که در اینجا s ما
38
00:01:12,720 –> 00:01:15,520
برابر است با جلسه html و در اینجا
39
00:01:15,520 –> 00:01:17,280
تمام کاری که من انجام می دهم این است. به جای آن، آن را session فراخوانی
40
00:01:17,280 –> 00:01:18,799
میدهیم و به آن در
41
00:01:18,799 –> 00:01:20,720
خارج از قسمت خود از روش مقداردهی اولیه خود ارجاع میدهیم،
42
00:01:20,720 –> 00:01:22,880
43
00:01:22,880 –> 00:01:24,400
مورد بعدی که میخواهیم سرصفحهها هستند، بنابراین
44
00:01:24,400 –> 00:01:26,880
من میخواهم سرصفحههای خود نقطهای را انجام دهم که
45
00:01:26,880 –> 00:01:29,119
برابر است و همه موارد را کپی میکنم.
46
00:01:29,119 –> 00:01:31,600
هدرها از اینجا عامل کاربر در این
47
00:01:31,600 –> 00:01:34,720
مورد فقط بیایید کل این خط را کپی کنیم
48
00:01:34,720 –> 00:01:36,400
و بگذارید آن را در اینجا قرار دهیم ما به
49
00:01:36,400 –> 00:01:38,159
این بیت نیاز نداریم بنابراین من همچنین می خواهم
50
00:01:38,159 –> 00:01:40,400
در URL اصلی اضافه کنم زیرا این اسکراپر برای
51
00:01:40,400 –> 00:01:41,920
آمازون است. به این اضافه
52
00:01:41,920 –> 00:01:43,600
میکنم که نیازی نیست
53
00:01:43,600 –> 00:01:44,960
بسته به کاری که انجام میدهید این کار را انجام دهید، اما من این
54
00:01:44,960 –> 00:01:47,040
کار را انجام خواهم داد. elf dot و
55
00:01:47,040 –> 00:01:50,560
ما این نشانی وب پایه
56
00:01:50,560 –> 00:01:52,640
را برابر میدانیم و از اینجا نیز
57
00:01:52,640 –> 00:01:54,399
میگیریم که میتوانیم ببینیم که این قسمت
58
00:01:54,399 –> 00:01:55,840
و آس در انتهای آن وجود دارد، بنابراین من
59
00:01:55,840 –> 00:01:57,759
فقط میخواهم این را بچسبانم در اینجا، بنابراین اکنون
60
00:01:57,759 –> 00:02:00,159
ما سه بیت از اطلاعات خود را
61
00:02:00,159 –> 00:02:02,159
تنظیم کرده ایم که هر
62
00:02:02,159 –> 00:02:05,200
بار که نمونه ای از این کلاس را ایجاد می کنیم، فراخوانی می شود،
63
00:02:05,200 –> 00:02:07,360
بنابراین اکنون می توانیم روی متدها
64
00:02:07,360 –> 00:02:08,479
یا توابع بعدی که نیاز داریم کار کنیم، بنابراین من این
65
00:02:08,479 –> 00:02:10,318
را فراخوانی می کنم. یک عصاره بنابراین این
66
00:02:10,318 –> 00:02:12,160
یکی خواهد بود که تمام
67
00:02:12,160 –> 00:02:14,239
اطلاعات مورد نیاز ما را به ما میدهد و میخواهیم
68
00:02:14,239 –> 00:02:15,680
بگوییم بدیهی است که باید
69
00:02:15,680 –> 00:02:17,920
دوباره به خود ارجاع دهیم این برای من به صورت خودکار پر شده است،
70
00:02:17,920 –> 00:02:19,599
اما ما نیز به
71
00:02:19,599 –> 00:02:21,760
آن ACE در تعداد تا بداند چه باید
72
00:02:21,760 –> 00:02:23,360
بکند، بنابراین کاری که ما در اینجا
73
00:02:23,360 –> 00:02:24,720
انجام خواهیم داد این است که یک نوع پوسته
74
00:02:24,720 –> 00:02:25,520
اصلی
75
00:02:25,520 –> 00:02:27,760
یا چارچوب چیزی را که در حال
76
00:02:27,760 –> 00:02:29,200
خراشیدن هستیم بنویسیم اکنون فقط دو بیت دریافت می کنیم
77
00:02:29,200 –> 00:02:31,200
از داده ها، بنابراین بسیار آسان و ساده است،
78
00:02:31,200 –> 00:02:32,480
اما کاری که ما می خواهیم انجام دهیم این است که می خواهیم
79
00:02:32,480 –> 00:02:35,200
این بیت را در اینجا و این
80
00:02:35,200 –> 00:02:36,879
قسمت را اینجا تکرار کنیم، اما w این کار را
81
00:02:36,879 –> 00:02:38,800
با استفاده از کلاس خود انجام می دهیم، بنابراین آنچه می خواهیم انجام دهیم این است
82
00:02:38,800 –> 00:02:41,360
که می خواهیم بگوییم r ما برابر است با
83
00:02:41,360 –> 00:02:42,160
84
00:02:42,160 –> 00:02:43,599
نقطه خود نقطه جلسه
85
00:02:43,599 –> 00:02:46,800
دریافت بنابراین به جای s dot get که
86
00:02:46,800 –> 00:02:48,239
در اینجا استفاده می کنیم
87
00:02:48,239 –> 00:02:49,920
که جلسه ما است s ما است.
88
00:02:49,920 –> 00:02:51,599
جلسه ما از جلسه self
89
00:02:51,599 –> 00:02:52,959
dot استفاده می کنیم که در
90
00:02:52,959 –> 00:02:55,280
اینجا به آن اشاره کردیم و اکنون می توانیم بگوییم که
91
00:02:55,280 –> 00:02:56,879
آدرس اصلی که می
92
00:02:56,879 –> 00:02:58,319
خواهیم بگوییم آن را
93
00:02:58,319 –> 00:03:00,080
به acin که می خواهیم اضافه کنیم آن را بدهید و
94
00:03:00,080 –> 00:03:02,800
ما sdr را در اطراف این رشته صدا
95
00:03:02,800 –> 00:03:04,640
میزنیم زیرا میخواهیم مطمئن شویم
96
00:03:04,640 –> 00:03:06,080
که چون به
97
00:03:06,080 –> 00:03:08,640
انتهای URL اصلی اضافه میشود که این یک رشته است،
98
00:03:08,640 –> 00:03:11,040
بنابراین میتوان آن را به هم متصل کرد، کار
99
00:03:11,040 –> 00:03:12,400
بعدی که میخواهم انجام دهم این است. فقط
100
00:03:12,400 –> 00:03:16,239
آن سرصفحهها را طوری قرار دهید که سرصفحههای خود نقطه باشند
101
00:03:16,239 –> 00:03:18,480
و ما خوب هستیم که برویم،
102
00:03:18,480 –> 00:03:19,840
بنابراین بیت بعدی که میخواهیم انجام دهیم این است که
103
00:03:19,840 –> 00:03:21,680
میخواهیم کاری را با دادههایی که میخواهیم خراش دهیم انجام دهیم،
104
00:03:21,680 –> 00:03:22,800
بنابراین من فقط
105
00:03:22,800 –> 00:03:24,400
میخواهم خراشیده شده را صدا بزنم.
106
00:03:24,400 –> 00:03:26,959
مورد در اینجا برابر است با و من قصد دارم
107
00:03:26,959 –> 00:03:29,280
یک تاپل پر از داده ایجاد کنم تا
108
00:03:29,280 –> 00:03:30,640
بتوانید ببینید که ما این را داریم
109