موضوع مقاله: تراشیدن داده | مخاطب: عمومی | لحن: دانشنامه‌ای | ساختار: عنوان، مقدمه، 3 بخش، جمع‌بندی | مقاله: | # تراشیدن داده | مقدمه: در تکنیک تراشیدن داده یک برنامه رایانه ای داده‌ها را از خروجی‌های انسان-خواندنی که از برنامهٔ دیگری آمده‌است، استخراج می‌کند. | ## بخش 1: تراشیدن داده | تفاوت تجزیه داده با تراش داده در تجزیه داده (Data parsing) انتقال داده بین برنامه‌های رایانه‌ای معمولاً با استفاده از ساختمان‌های داده‌ای که برای پردازش خودکار توسط رایانه، مناسب اند (نه انسان‌ها) انجام می‌شود. این فرمت‌های تبدیل و پروتکل‌ها معمولاً به صورت سختگیرانه‌ای ساخت یافته‌اند، به خوبی سند دهی شده‌اند، و به راحتی قابل تجزیه می‌باشند، و نیز ابهام را در حد حداقل قرار می‌دهند. تراش داده برخلاف روش‌های تجزیه معمول، قصد دارد تراش را روی خروجی که برای نمایش به کاربر نهایی در نظر گرفته شده‌است، انجام دهد؛ بنابراین این خروجی‌ها به صورت مناسب ساختار دهی نشده‌اند تا به صورت معمول تجزیه (parse) شوند. عمل تراش دادن داده، معمولاً شامل نادیده گرفتن داده‌های دودویی (معمولاً تصاویر یا دادهٔ چند رسانه ای)، نادیده گرفتن قالب دهی نمایشگر، نادیده گرفتن برچسب‌های تکراری، نادیده گرفتن توضیحات زاید، و نادیده گرفتن اطلاعات دیگری است که یا بی ربط اند یا مانع پردازش خودکار می‌شوند. موارد کاربرد تراش داده تراش داده معمولاً برای ارتباط با سامانه‌های موروثی (سیستم‌های قدیمی) که هیچ سازوکار دیگری برای سازگاری با سخت‌افزار فعلی موجود ندارند، استفاده می‌شود. تراش داده ممکن است در سیستم‌های ثالثی که رابط برنامه‌نویسی کاربری (API) مناسبی ندارند، استفاده شود. در این حالت ممکن است کاربر سیستم ثالث، به دلیل ایجاد بار کاری بالا برای سیستم، یا نبود درآمدهای لازم برای ساخت رابط، یا از بین رفتن کنترل روی محتوای اطلاعات، از ساخت یک رابط کاربری مناسب خودداری کند. تراش داده معمولاً، یک تکنیک موردی ناخوشایند است، و «آخرین پناهگاه فرار» می‌باشد، یعنی موقعی که هیچ سازوکار دیگری برای تبادل داده در دسترس نیست، از این روش باید استفاده کرد. | ## بخش 2: تراشیدن داده | دلیل این موضوع، اول، سربار پردازشی و برنامه‌نویسی بالاتر، می‌باشد، دلیل بعدی آن است که خروجی‌های نمایشی که برای مصرف انسان‌ها درنظر گرفته شده‌اند، ساختارشان به صورت مکرر تغییر می‌کند. اگر چه انسان‌ها به سادگی با این موضوع کنار می‌آیند، اما برنامه‌های رایانه ای ممکن است این موضوع را غیر عقلانی بدانند، زیرا به آنها گفته شده‌است که داده را در یک قالب خاص، و در یک محل خاص، بخوانند. تراش صفحه نمایش تراش صفحه نمایش معمولاً جمع‌آوری داده‌های دیداری از یک منبع، مثل پایانه رایانه ای، به جای تجزیهٔ داده در تراش صفحه وب است. به خواندن دادهٔ متنی از صفحه پایانه نمایش رایانه، تراش صفحه نمایش گفته می‌شود؛ مثلاً در سیستم‌های قدیمی که از برنامه کاربردی پردازنده مرکزی (از نوع IBM 3270) بعضی از برنامه‌های وب منحصراً از تکنیک‌های «تراش صفحه» برای در اختیار گرفتن صفحه و انتقال داده به خروجی‌های مدرن استفاده می‌کنند."Back in the 1990s.. تراش وب صفحات وب توسط زبان های نشانه گذاری متنی (HTML و XHTML) ساخته شده اند، و به صورت معمول شامل داده های مفیدی در حالت متنی می باشند. با این حال، بیشتر صفحه های وب برای کاربر نهایی انسانی طراحی شده اند و برای استفاده ی خودکار مناسب نیستند. یک تراش دهنده ی وب یک رابط برنامه نویسی کاربردی (یا ابزار عمومی) برای استخراج داده از وب سایت می باشد. شرکت هایی مثل سرویس های وب آمازون و گوگل ابزارها، سرویس‌ها، و داده های عمومی تراش وب را، که برای کاربر نهایی رایگان می باشند، ارائه می دهند. | ## بخش 3: تراشیدن داده | برای مثال، از JSON معمولاً به عنوان یک سازکار ارتباطی ذخیره سازی بین کارخواه و سرور وب استفاده می شود. امروزه، شرکت ها سیستم های تراش داده ای را توسعه داده اند که متکی به تکنولوژی هایی در تجزیه ی DOM، بینایی رایانه ای، و پردازش زبان های طبیعی می باشند، و هدف آنها «شبیه سازی پردازش های انسانی است که در هنگام دیدن یک صفحه وب رخ می دهد» می باشد، تا اطلاعات مفیدی را به صورت خودکار استخراج کنند . وب سایت های بزرگ معمولاً از الگوریتم های دفاعی برای محافظت از داده هایشان در برابر تراش دهنده های داده استفاده می کنند، و نیز از روش هایی برای محدود سازی تعداد درخواست هایی که یک IP یا یک شبکه از IP ها می تواند بفرستد استفاده می کنند. این موضوع باعث یک جنگ در حال پیشرفت بین توسعه دهندگان وب سایت ها و توسعه دهنده‌های تراشگرها شده است. کاوش گزارش کاوش گزارش به معنی استخراج داده از گزارش‌های رایانه ای انسان-خواندنی است. استخراج داده ی سنتی نیاز به یک ارتباط با یک سیستم منبع کاری دارد، استانداردهای اتصال مناسب باید به وجود آید، یا یک رابط برنامه‌نویسی کاربردی (API) باید ساخته شود، و معمولاً درخواست دهی در آن پیچیده‌است. که این موارد می‌توانند به صورت ساده از تقریباً هر سیستمی با حائل کردن «خوراک داده» به یک چاپگر، تولید شوند. | ## جمع‌بندی | این دیدگاه می‌تواند یک راه ساده و سریع برای دستیابی به داده ایجاد کند، که در آن نیازی به برنامه‌نویسی یک API به یک سیستم منبع نیست.