نقد و بررسی Semalt: Scraping Web for Fun & سود

می توانید سایت را بدون نیاز به API ضبط کنید. در حالی که دارندگان سایت نسبت به متوقف کردن قراضه تهاجمی هستند ، آنها به API ها کمتر اهمیت می دهند و در عوض تأکید بیشتری روی وب سایت ها می کنند. حقایقی که بسیاری از سایتها به اندازه کافی از دسترسی خودکار محافظت نمی کنند ، بستری برای اسکرابر ایجاد می کند. برخی از راه حل های ساده به شما کمک می کند تا داده های مورد نیاز خود را جمع کنید.

شروع به کار با خراشیدن

خراش دادن به درک ساختار داده های مورد نیاز و دسترسی به آن نیاز دارد. این با واکشی داده های شما شروع می شود. URL را پیدا کنید که اطلاعات مورد نیاز شما را برگرداند. در وب سایت مرور کنید و نحوه تغییر URL ها را هنگام حرکت در بخش های مختلف بررسی کنید.

از طرف دیگر ، چندین اصطلاح را در سایت جستجو کنید و بررسی کنید که چگونه URL ها بر اساس اصطلاح جستجوی شما تغییر می کنند. شما باید یک پارامتر GET مانند q = مشاهده کنید که هر زمان که اصطلاح جدیدی را جستجو کردید تغییر می کند. پارامترهای GET لازم برای بارگیری داده های خود را حفظ کرده و سایرین را حذف کنید.

چگونه با صفحات مقابله کنیم

صفحه بندی شما را از دسترسی به تمام داده های مورد نیاز به طور همزمان باز می دارد. هنگامی که روی صفحه 2 کلیک می کنید ، یک پارامتر offset = به URL اضافه می شود. این یا تعداد عناصر موجود در یک صفحه یا شماره صفحه است. این تعداد را در هر صفحه از داده های خود افزایش دهید.

برای سایتهایی که از AJAX استفاده می کنند ، تب شبکه را در Firebug یا Inspector بکشید. درخواستهای XHR را بررسی کنید ، آنهایی را که اطلاعات شما را جذب می کنند شناسایی و تمرکز کنید.

از Markup Page اطلاعات دریافت کنید

این با استفاده از قلاب های CSS حاصل می شود. بر روی بخش خاصی از داده های خود راست کلیک کنید. Firebug یا Inspector را بکشید و از درخت DOM بزرگنمایی کنید تا بیشترین <div> که یک مورد واحد را پیچیده است ، بدست آورید. هنگامی که گره صحیحی از درخت DOM دارید ، منبع صفحه را مشاهده کنید تا اطمینان حاصل شود که عناصر شما در HTML خام قابل دسترسی هستند.

برای موفقیت در صحنه نگاشتن سایت ، به یک کتابخانه تجزیه و تحلیل HTML نیاز دارید که به زبان HTML می خواند و آن را به یک شیء تبدیل می کند که می توانید تا زمانی که آنچه مورد نیازتان است ، تکرار کنید. اگر کتابخانه HTTP شما نیاز دارد که برخی از کوکی ها یا هدر ها را تنظیم کنید ، سایت را در مرورگر وب خود مرور کنید و هدر ها را از طریق مرورگر خود ارسال کنید. آنها را در یک فرهنگ لغت قرار داده و با درخواست خود به جلو بفرستید.

هنگامی که برای خراشیدن نیاز به ورود دارید

اگر برای به دست آوردن داده های مورد نظر خود باید یک حساب کاربری ایجاد کنید و وارد شوید ، باید یک اداره کتابخانه خوب HTTP داشته باشید تا وارد شوید ورود به سیستم Scraper شما را در سایت های شخص ثالث قرار می دهد.

اگر محدودیت نرخ خدمات وب شما به آدرس IP بستگی دارد ، کدی را انتخاب کنید که در آن سرویس وب قرار می گیرد در Javascript سمت مشتری. سپس نتایج را از هر مشتری به سرور خود برگردانید. نتایج به نظر می رسد از بسیاری از مکان ها سرچشمه می گیرد ، و هیچ یک از حد مجاز نرخ آنها فراتر نخواهد رفت.

نشانه گذاری شکل پذیر

اعتبار برخی از نشانه گذاری ها دشوار است. در چنین مواردی ، برای تنظیمات تحمل خطا ، در تجزیه و تحلیلگر HTML خود حفر کنید. روش دیگر ، با کل سند HTML به عنوان یک رشته طولانی رفتار کنید و تقسیم رشته را انجام دهید.

در حالی که می توانید سایت را به نوعی ضبط کردن انواع داده در شبکه ، برخی از سایت ها از نرم افزار برای متوقف کردن ضبط استفاده کنید ، و دیگر ممنوعیت ضبط وب . چنین سایتهایی می توانند از شما شکایت کنند و حتی به خاطر برداشت داده های آنها به زندان افتاده اید. بنابراین در تمام صفحات وب خود هوشمند باشید و این کار را با خیال راحت انجام دهید.