در این مطلب، ویدئو نحوه خراش دادن نظرات با Python Scrapy | گیگ آزاد | اسکریپت قابل استفاده مجدد با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 00:18:34
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:00,640 –> 00:00:02,560
در ویدیوی امروز می خواهیم در
2
00:00:02,560 –> 00:00:04,240
مورد اینکه چگونه می توانیم
3
00:00:04,240 –> 00:00:06,799
بررسی های آمازون را حذف کنیم صحبت کنیم و من تصمیم گرفتم
4
00:00:06,799 –> 00:00:09,440
این ویدیو را ایجاد کنم زیرا می بینم که همان
5
00:00:09,440 –> 00:00:13,040
کار در چندین سایت فریلنسینگ
6
00:00:13,040 –> 00:00:15,040
بارها و بارها پست شده است، بنابراین
7
00:00:15,040 –> 00:00:16,320
یک بار اسکریپت را
8
00:00:16,320 –> 00:00:19,439
می نویسیم و بعداً می توانید دوباره از آن استفاده کنید.
9
00:00:19,439 –> 00:00:21,520
بنابراین نشانی اینترنتی محصول معمولاً مانند
10
00:00:21,520 –> 00:00:22,480
این است، یک
11
00:00:22,480 –> 00:00:25,119
URL طولانی است، بنابراین آنچه مهم است این است که در واقع
12
00:00:25,119 –> 00:00:25,519
13
00:00:25,519 –> 00:00:27,920
این شماره asin است که معمولاً در
14
00:00:27,920 –> 00:00:30,240
اطلاعات این محصول است،
15
00:00:30,240 –> 00:00:32,399
بنابراین این شماره است و این شماره
16
00:00:32,399 –> 00:00:34,399
نیز در این آدرس اینترنتی است،
17
00:00:34,399 –> 00:00:36,800
بنابراین در واقع میتوانید
18
00:00:36,800 –> 00:00:37,840
همه چیزهای دیگر
19
00:00:37,840 –> 00:00:41,040
را حذف کنید. اسلش dp
20
00:00:41,040 –> 00:00:43,440
و این عدد asin و
21
00:00:43,440 –> 00:00:44,800
در واقع میتوانید این
22
00:00:44,800 –> 00:00:47,840
آدرس اینترنتی کوتاه را برای همان صفحه محصول
23
00:00:47,840 –> 00:00:50,960
بسازید، به طور مشابه، بررسیهای محصول دارای این
24
00:00:50,960 –> 00:00:52,640
شکل کوتاه هستند،
25
00:00:52,640 –> 00:00:55,360
بنابراین URL طولانیتر شبیه به این است، اما
26
00:00:55,360 –> 00:00:56,000
میتوانید
27
00:00:56,000 –> 00:00:59,120
همه چیزهای دیگر را حذف کنید و فقط
28
00:00:59,120 –> 00:01:02,399
نظرات خط تیره محصول amazon.com را نگه دارید. و این
29
00:01:02,399 –> 00:01:06,159
asin، پس بیایید شروع به نوشتن عنکبوت کنیم،
30
00:01:06,159 –> 00:01:08,799
بنابراین بیایید خط فرمان را باز کنیم و
31
00:01:08,799 –> 00:01:10,560
یک
32
00:01:10,560 –> 00:01:14,720
پروژه شروع به قدری ناقص ایجاد کنیم
33
00:01:14,720 –> 00:01:18,000
و بیایید نام آمازون را برای
34
00:01:18,000 –> 00:01:21,119
آن بگذاریم، پس اکنون ما باید سی دی را در آمازون وارد کنید
35
00:01:21,119 –> 00:01:24,240
و سپس عنکبوت را تولید کنید، اجازه دهید من این عنکبوت را پاک کنم
36
00:01:24,240 –> 00:01:26,240
37
00:01:26,240 –> 00:01:30,479
و سپس
38
00:01:30,479 –> 00:01:33,200
نام آن را بررسی کنیم و چهارمین
39
00:01:33,200 –> 00:01:36,320
پارامتر URL شروع خواهد بود،
40
00:01:36,320 –> 00:01:39,840
بنابراین من فقط x را قرار می دهم زیرا من i هستم
41
00:01:39,840 –> 00:01:42,960
یک اشتباه تایپی کردم بنابراین x را گذاشتم زیرا فقط
42
00:01:42,960 –> 00:01:44,799
میخواهم
43
00:01:44,799 –> 00:01:48,799
همه چیز را حذف کنم و کدم را بازنویسی کنم
44
00:01:48,799 –> 00:01:51,040
خوب است، بنابراین من این پوشه کامل را
45
00:01:51,040 –> 00:01:53,200
در کد ویژوال استودیو باز میکنم،
46
00:01:53,200 –> 00:01:55,520
بنابراین مطمئناً میتوانید از هر ویرایشگر کدی
47
00:01:55,520 –> 00:01:57,520
که میخواهید استفاده کنید، استفاده کنید.
48
00:01:57,520 –> 00:02:01,439
49
00:02:01,439 –> 00:02:02,880
ساختار پروژه scrappy اگر
50
00:02:02,880 –> 00:02:04,799
واقعاً با ساختار scrappy آشنا و راحت نیستید
51
00:02:04,799 –> 00:02:06,320
52
00:02:06,320 –> 00:02:08,479
، تنها دو فایلی که
53
00:02:08,479 –> 00:02:10,399
برای این پروژه خاص مهم هستند
54
00:02:10,399 –> 00:02:12,959
، این عنکبوت است، بنابراین این
55
00:02:12,959 –> 00:02:15,360
عنکبوت خالی است که تولید شده است
56
00:02:15,360 –> 00:02:18,000
و این فایل settings.py، بنابراین ما
57
00:02:18,000 –> 00:02:19,920
تعدادی را ارائه خواهیم کرد. تنظیمات
58
00:02:19,920 –> 00:02:23,280
درست است، پس بیایید
59
00:02:23,280 –> 00:02:26,640
با عنکبوت شروع کنیم، بنابراین اجازه دهید همه چیز را
60
00:02:26,640 –> 00:02:27,599
بزرگتر
61
00:02:27,599 –> 00:02:30,640
کنم، اکنون میخواهم این دامنه مجاز را حذف کنم
62
00:02:30,640 –> 00:02:33,920
و آدرسهای اینترنتی را شروع کنم، بنابراین
63
00:02:33,920 –> 00:02:35,920
این چهارمین پارامتری است که
64
00:02:35,920 –> 00:02:38,720
اینجا قرار میدهیم، بنابراین همه چیز را حذف میکنم.
65
00:02:38,720 –> 00:02:40,800
و اکنون کاری که میخواهیم انجام دهیم این است که میخواهیم
66
00:02:40,800 –> 00:02:41,840
67
00:02:41,840 –> 00:02:45,040
این url را به خوبی دریافت کنیم، بنابراین
68
00:02:45,040 –> 00:02:49,040
من آن را خارج از کلاس قرار میدهم،
69
00:02:49,280 –> 00:02:54,239
بنابراین این URL بررسی است.
70
00:02:55,920 –> 00:02:57,599
71
00:02:57,599 –> 00:02:58,959
72
00:02:58,959 –> 00:03:02,560
عدد را کنار بگذارید و
73
00:03:02,560 –> 00:03:06,080
پرانتزهای فرفری را اینجا بگذارید
74
00:03:06,080 –> 00:03:09,840
و من این اعداد asn را
75
00:03:09,840 –> 00:03:11,680
در یک متغیر دیگر قرار میدهم و در واقع
76
00:03:11,680 –> 00:03:13,840
77
00:03:13,840 –> 00:03:16,159
یک لیست ایجاد میکنم پس چرا به جای یک متغیر رشتهای یک لیست ایجاد
78
00:03:16,159 –> 00:03:17,519
79
00:03:17,519 –> 00:03:20,319
میکنم تا بتوانیم چندین عدد asin ارائه دهیم.
80
00:03:20,319 –> 00:03:20,959
81
00:03:20,959 –> 00:03:24,319
و فقط تمام بررسی ها را یکجا دریافت کنید،
82
00:03:24,319 –> 00:03:26,080
اکنون کاری که می خواهیم انجام دهیم این است که به
83
00:03:26,080 –> 00:03:27,840
جای آن آدرس
84
00:03:27,840 –> 00:03:30,799
های اینترنتی شروع، از توابع درخواست شروع استفاده می کنیم
85
00:03:30,799 –> 00:03:33,840
86
00:03:36,560 –> 00:03:39,200
و در اینجا یک حلقه در
87
00:03:39,200 –> 00:03:40,000
این
88
00:03:40,000 –> 00:03:43,760
لیست اجرا خواهیم کرد، بنابراین یک حلقه را اجرا خواهیم کرد.
89
00:03:43,760 –> 00:03:47,200
برای s i n in
90
00:03:47,200 –> 00:03:50,319
s در لیست و کاری که
91
00:03:50,319 –> 00:03:53,439
می خواهیم انجام دهیم این است که یک URL ایجاد می کنیم
92
00:03:53,439 –> 00:03:56,959
و چگونه این URL را ایجاد می کنیم،
93
00:03:57,200 –> 00:04:01,360
بنابراین ما این آدرس URL را بررسی می
94
00:04:01,360 –> 00:04:05,040
کنیم، بیایید از روش قالب استفاده کنیم
95
00:04:05,599 –> 00:04:07,840
تا اکنون که آن را داریم به سادگی بتوانیم نتیجه دهیم
96
00:04:07,840 –> 00:04:09,840
97
00:04:09,840 –> 00:04:12,959
درخواست نقطه خالی کنید
98
00:04:12,959 –> 00:04:16,639
و فقط این url را ساده بفرستید
99
00:04:16,639 –> 00:04:18,880
تا نیازی به حرفه ای نداشته باشیم پاسخ تماس را وارد کنید
100
00:04:18,880 –> 00:04:21,358
زیرا به هر حال پاسخ تماس پیشفرض
101
00:04:21,358 –> 00:04:22,960
تجزیه میشود
102
00:04:22,960 –> 00:04:26,400
و بیایید فقط
103
00:04:26,400 –> 00:04:29,600
چیزی مانند i am in resp
104
00:04:29,600 –> 00:04:33,040
من در تجزیه هستم خوب چاپ کنیم، بنابراین
105
00:04:33,040 –> 00:04:35,199
چیزی را بر نمیگردانم، فقط میخواهم به شما نشان
106
00:04:35,199 –> 00:04:38,240
دهم اگر ارسال نکنید چه اتفاقی میافتد.
107
00:04:38,240 –> 00:04:41,360
سرصفحه ها خوب است، پس بیایید به خط فرمان برویم
108
00:04:41,360 –> 00:04:43,840
همه چیز را پاک کنید،
109
00:04:43,840 –> 00:04:46,560
بنابراین همیشه لیست scrappy را به عنوان اولین
110
00:04:46,560 –> 00:04:49,520
دستور اجرا کنید، حتی اگر فقط یک عنکبوت
111
00:04:49,520 –> 00:04:52,000
داشته باشید، اگر
112
00:04:52,000 –> 00:04:53,919
اشتباه تایپی یا هر چیزی انجام داده باشید، به
113
00:04:53,919 –> 00:04:54,240
شما خطا
114
00:04:54,240 –> 00:04:57,680
می دهد. ما از
115
00:04:57,680 –> 00:04:59,120
روش خزیدن استفاده می
116
00:04:59,120 –> 00:05:03,199
کنیم، زیرا عنکبوت ما بخشی از پروژه است،
117
00:05:03,520 –> 00:05:08,840
بنابراین به سادگی این را اجرا کنید و بیایید ببینیم چه چیزهایی
118
00:05:08,840 –> 00:05:10,639
داریم،
119
00:05:10,639 –> 00:05:13,120
بنابراین یک سیاهه بزرگ داریم و اگر شما تازه
120
00:05:13,120 –> 00:05:15,199
وارد این دنیای ناقص هستید،
121
00:05:15,199 –> 00:05:17,759
ممکن است کمی دلهره آور به نظر برسد، اما
122
00:05:17,759 –> 00:05:19,919
به ما کمک می کند. اطلاعات بسیار مهم،
123
00:05:19,919 –> 00:05:23,199
بیایید سعی کنیم این را
124
00:05:23,199 –> 00:05:26,160
بفهمیم، بنابراین خزیدن از اینجا شروع می شود، بنابراین در
125
00:05:26,160 –> 00:05:27,680
اینجا اولین کاری که قرار است انجام شود
126
00:05:27,680 –> 00:05:29,160
این است که به دنبال
127
00:05:29,160 –> 00:05:32,720
robots.txt می شود و نتیجه 200 است.
128
00:05:32,720 –> 00:05:35,280
حالا چرا مهم است این بدان معنی است که
129
00:05:35,280 –> 00:05:36,960
ما هستیم احترام
130
00:05:36,960 –> 00:05:38,720
گذاشتن به کراو قوانین ling بنابراین ما هرگز نباید
131
00:05:38,720 –> 00:05:40,400
صفحاتی را که
132
00:05:40,400 –> 00:05:43,280
توسط robots.txt مجاز نیستند بخزیم و scrappy
133
00:05:43,280 –> 00:05:44,479
از آن مراقبت می کند،
134
00:05:44,479 –> 00:05:47,680
بنابراین خوب است که اکنون در حال تلاش برای
135
00:05:47,680 –> 00:05:51,120
دریافت این صفحه خاص هستیم و
136
00:05:51,120 –> 00:05:52,960
با خطای 503 شکست خورده است،
137
00:05:52,960 –> 00:05:55,680
بنابراین ممکن است در آن خطا دریافت کنید. محدوده 500 یا
138
00:05:55,680 –> 00:05:56,800
محدوده 400
139
00:05:56,800 –> 00:05:58,080
اگر سرصفحه های صحیح را ارسال نمی کنید
140
00:05:58,080 –> 00:06:00,400
، این بار
141
00:06:00,400 –> 00:06:03,120
ما می خواهیم هدرهای صحیح را ارسال
142
00:06:03,120 –> 00:06:05,680
کنیم اکنون این هدرها را از کجا می گیریم،
143
00:06:05,680 –> 00:06:08,720
بنابراین بیایید صفحه را باز کنیم و
144
00:06:08,720 –> 00:06:11,759
در واقع اگر این کار را در پنجره ناشناس انجام دهید، صفحه را باز کرده و f12 را فشار دهید.
145
00:06:11,759 –> 00:06:14,560
حتی بهتر خواهد بود،
146
00:06:14,560 –> 00:06:16,880
147
00:06:18,400 –> 00:06:20,960
بنابراین مانند باز کردن صفحه برای
148
00:06:20,960 –> 00:06:22,400
اولین بار است
149
00:06:22,400 –> 00:06:24,800
و ما چیزهای زیادی داریم، اما در
150
00:06:24,800 –> 00:06:28,080
حال حاضر فقط به اولین مورد علاقه مندیم
151
00:06:28,080 –> 00:06:31,039
زیرا این همان چیزی است که حاوی پاسخ واقعی ما است،
152
00:06:31,039 –> 00:06:32,400
153
00:06:32,400 –> 00:06:35,039
بنابراین این شامل همه بررسی ها است و
154
00:06:35,039 –> 00:06:36,160
بیایید به آن نگاه کنیم.
155
00:06:36,160 –> 00:06:38,639
سرصفحه های درخواست نه پاسخ،
156
00:06:38,639 –> 00:06:40,319
سرصفحه های درخواست را ویرایش می کند،
157
00:06:40,319 –> 00:06:42,000
بنابراین تعداد زیادی سرصفحه درخواست
158
00:06:42,000 –> 00:06:44,240
ارسال می
159
00:06:44,240 –> 00:06:46,720
شوند، بنابراین می توانید سرصفحه هایی را که با دو نقطه شروع می شوند نادیده بگیرید،
160
00:06:46,720 –> 00:06:48,479
161
00:06:48,479 –> 00:06:50,560
بنابراین از اینجا به اینجا اینها
162
00:06:50,560 –> 00:06:51,520
سرصفحه هایی هستند
163
00:06:51,520 –> 00:06:54,479
که باید برای شما ارسال کنید. معمولاً اگر
164
00:06:54,479 –> 00:06:55,360
فقط
165
00:06:55,360 –> 00:06:57,840
عامل کاربر را ارسال می کنید که باید کافی باشد بنابراین
166
00:06:57,840 –> 00:06:59,599
معمولاً توصیه می کنم
167
00:06:59,599 –> 00:07:02,319
همه هدرها را ارسال کنید بنابراین من فقط
168
00:07:02,319 –> 00:07:04,080
ctrl c را فشار می
169
00:07:04,080 –> 00:07:07,599
دهم و اکنون به کد
170
00:07:07,599 –> 00:07:09,360
می رسیم و اینجاست که باید یک
171
00:07:09,360 –> 00:07:11,280
متغیر هدر ایجاد کنیم.
172
00:07:11,280 –> 00:07:14,080
به جای نوشتن این سرصفحه ها در اینجا
173
00:07:14,080 –> 00:07:17,039
در این عنکبوت، اگر به
174
00:07:17,039 –> 00:07:20,479
پایین اسکرول
175
00:07:20,479 –> 00:07:23,840
کنیم و در واقع به دنبال
176
00:07:23,840 –> 00:07:25,919
پیش فرض بگردیم، می روم تنظیمات
177
00:07:25,919 –> 00:07:27,840
178
00:07:27,840 –> 00:07:29,599
179
00:07:29,599 –> 00:07:32,720
را به درستی در تنظیمات فقط این را اینجا کپی کنید
180
00:07:32,720 –> 00:07:35,199
و در اینجا پیست کنید و اجازه دهید
181
00:07:35,199 –> 00:07:36,800
همه چیزهای دیگر را حذف کنم تا
182
00:07:36,800 –> 00:07:39,360
قابل خواندن باشد
183
00:07:40,319 –> 00:07:43,039
و در حال حاضر روی true
184
00:07:43,039 –> 00:07:44,000
تنظیم شده است، می توانیم آن را روی false
185
00:07:44,000 –> 00:07:45,960
قرار دهیم و نمی رود و دنبال
186
00:07:45,960 –> 00:07:47,440
robots.txt نمی شود،
187
00:07:47,440 –> 00:07:51,199
بنابراین آنچه ما می خواهیم این است که ما میخواهید
188
00:07:51,199 –> 00:07:54,479
تمام این متن را که دقیقاً در اینجا است دریافت کنید، بنابراین اجازه دهید
189
00:07:54,479 –> 00:07:56,560
من آن را در رشته نقل قول سهگانه قرار دهم،
190
00:07:56,560 –> 00:07:59,199
بنابراین ما این چیز بزرگ را داریم و میخواهیم
191
00:07:59,199 –> 00:08:01,440
آن را به یک فرهنگ لغت تبدیل کنیم،
192
00:08:01,440 –> 00:08:03,360
زیرا سرصفحه درخواست پیشفرض
193
00:08:03,360 –> 00:08:06,479
یک دیکشنری را میگیرد، پس چگونه این کار را انجام میدهید.
194
00:08:06,479 –> 00:08:09,440
برای آسان کردن کارها r فقط
195
00:08:09,440 –> 00:08:10,720
این بسته را دانلود کنید،
196
00:08:10,720 –> 00:08:13,599
بنابراین این Scrapper Helper است و شما
197
00:08:13,599 –> 00:08:15,520
به سادگی می توانید آن را با استفاده از pip install scrapper helper نصب کنید
198
00:08:15,520 –> 00:08:17,120
199
00:08:17,120 –> 00:08:19,280
و بله، این یکی از بسته هایی است
200
00:08:19,280 –> 00:08:20,400
که منتشر کرده ام
201
00:08:20,400 –> 00:08:23,039
که حاوی توابع کمکی زیادی است.
202
00:08:23,039 –> 00:08:24,560
203
00:08:24,560 –> 00:08:27,599
204
00:08:27,599 –> 00:08:30,800
205
00:08:30,800 –> 00:08:33,360
اکنون به یاد داشته باشید که تنظیمات dot py در
206
00:08:33,360 –> 00:08:35,679
واقع فقط یک فایل پایتون معمولی است، بنابراین
207
00:08:35,679 –> 00:08:37,440
اگر هر کد پایتونی بنویسید، اکنون
208
00:08:37,440 –> 00:08:39,200
اجرا میشود،
209
00:08:39,200 –> 00:08:41,039
کاری که در اینجا انجام میدهم
210
00:08:41,039 –> 00:08:42,880
این است که sh
211
00:08:42,880 –> 00:08:46,080
dot را
212
00:08:46,480 –> 00:08:49,440
فراخوانی میکنم و این روش را دریافت میکنم.
213
00:08:49,440 –> 00:08:49,920
214
00:08:49,920 –> 00:08:54,240
کل این رشته و بیایید این را ببندیم
215
00:08:54,240 –> 00:08:56,160
و کاری که انجام خواهد داد این است که
216
00:08:56,160 –> 00:08:57,600
تمام رشته ای را
217
00:08:57,600 –> 00:08:59,360
که مستقیماً از
218
00:08:59,360 –> 00:09:03,680
مرورگر کپی کرده ایم تبدیل می کند و یک فرهنگ لغت ایجاد می کند،
219
00:09:04,720 –> 00:09:07,839
بنابراین اکنون این هدرها با
220
00:09:07,839 –> 00:09:10,399
هر درخواست ارسال می شوند، بنابراین این هدف از
221
00:09:10,399 –> 00:09:12,480
درخواست پیش فرض است. سرصفحهها،