ہمارا پی ایچ پی سکریپر API GrabzIt کے ویب سکریپر کی طاقت کو آپ کے ایپ میں شامل کرنے کی اجازت دیتا ہے۔ عام HTML پی او ایم اسکریپنگ ایپس کے ذریعہ نافذ کردہ ، سادہ ایچ ٹی ایم ایل ڈوم پارسروں کے مقابلے میں یہ بہت بہتر حل ہے۔
آپ کے ساتھ شروع کرنے کے لئے کھرچنا پیدا کریں. پھر اپنی ایپ میں ویب کی تجزیہ کرنے کے ل you ، آپ کو لازمی طور پر ضروری ہے ڈاؤن لوڈ، اتارنا پی ایچ پی کی لائبریری۔ آخر میں ، شروع کرنے کے لئے ، ڈاؤن لوڈ کے اندر واقع ہینڈلر کو دیکھیں۔
سکریپڈ ڈیٹا پر کارروائی کرنے کا آسان ترین طریقہ یہ ہے کہ JSON یا XML آبجیکٹ کی حیثیت سے ڈیٹا تک رسائی حاصل کی جائے۔ چونکہ اس سے اعداد و شمار آسانی سے جوڑ توڑ اور باز پرس کر سکتے ہیں۔ JSON کو مندرجہ ذیل عمومی شکل میں تشکیل دیا جائے گا ، جس میں ڈیٹاسیٹ نام کے ساتھ آبجیکٹ وصف کی حیثیت سے ہے۔ خود ہر کالم کے نام کے ساتھ ایک اور خاصیت کے بطور اشیاء کی ایک صف پر مشتمل ہے۔
{ "Dataset_Name": [ { "Column_One": "https://grabz.it/", "Column_Two": "Found" }, { "Column_One": "http://dfadsdsa.com/", "Column_Two": "Missing" }] }
سب سے پہلے یہ یاد رکھنا ضروری ہے کہ ہینڈلر کو تمام نکالا ہوا ڈیٹا بھیجا جائے گا۔ اس میں ایسا ڈیٹا شامل ہوسکتا ہے جسے جے ایس اوون یا ایکس ایم ایل اشیاء میں تبدیل نہیں کیا جاسکتا ہے۔ لہذا عمل کرنے سے پہلے آپ جو قسم کا ڈیٹا وصول کررہے ہیں اس کی جانچ پڑتال ضروری ہے۔
$scrapeResult = new \GrabzIt\Scraper\ScrapeResult(); if ($scrapeResult->getExtension() == 'json') { $json = $scrapeResult->toJSON(); foreach ($json->Dataset_Name as $obj) { if ($obj->Column_Two == "Found") { //do something } else { //do something else } } } else { //probably a binary file etc save it $scrapeResult->save("results/".$scrapeResult->getFilename()); }
مندرجہ بالا مثال سے پتہ چلتا ہے کہ ڈیٹاسیٹ کے سارے نتائج کو کیسے لوپ کیا جائے Dataset_Name
. پھر ہر نتیجے کے لئے ایک خاص عمل کریں جس کی قیمت پر منحصر ہے Column_Two
وصف. نیز اگر ہینڈلر کے ذریعہ موصول ہونے والی فائل JSON فائل نہیں ہے تو یہ ٹھیک ہے saveنتائج کی ڈائرکٹری سے ڈی۔ جبکہ سکریپ ریسلٹ کلاس یہ یقینی بنانے کی کوشش کرتی ہے کہ تمام پوسٹ شدہ فائلیں گربزائٹ کے سرورز سے شروع ہوں۔ فائلوں کے ہونے سے پہلے ان کی توسیع بھی چیک کی جانی چاہئے saved.
سکریپ ریسلٹ کلاس کے تمام طریقے ذیل میں درج ہیں جو کھرچنے کے نتائج پر کارروائی کرنے کے لئے استعمال ہوسکتے ہیں۔
آپ کے پی ایچ پی ہینڈلر کو ڈیبگ کرنے کا بہترین طریقہ یہ ہے کہ نتائج کو اسکریپ کے لئے ڈاؤن لوڈ کریں ویب سکریپس صفحہ پھر save ایک قابل رسائی جگہ پر آپ کو جس فائل کا مسئلہ ہو رہا ہے۔ اس فائل کا راستہ پھر سکریپ ریسلٹ کلاس کے کنسٹرکٹر کے پاس جاسکتا ہے۔ جیسا کہ ذیل میں دکھایا گیا ہے ، ہر بار نیا کھرچنا کئے بغیر آپ کو اپنے ہینڈلر کو ڈیبگ کرنے کی اجازت دیتا ہے۔
$scrapeResult = new \GrabzIt\Scraper\ScrapeResult("data.json"); //the rest of your handler code remains the same
GrabzIt کے ویب سکریپر API کے ذریعہ ، آپ کھرچنے کی اس کیفیت کو تبدیل کرسکتے ہیں۔ ضرورت کے مطابق کسی کھرچنے کو دور سے شروع ، روکنے ، چالو کرنے یا ان کو غیر فعال کرنے کے ذریعے۔ یہ ذیل کی مثال میں دکھایا گیا ہے۔ مطلوبہ سکریپ کی حیثیت کے ساتھ اسکریپ کی ID کو پاس کرکے SetScrapeStatus
طریقہ.
$client = new \GrabzIt\Scraper\GrabzItScrapeClient("Sign in to view your Application Key", "Sign in to view your Application Secret"); //Get all of our scrapes $myScrapes = $client->GetScrapes(); if (empty($myScrapes)) { throw new Exception("You haven't created any scrapes yet! Create one here: https://grabz.it/scraper/scrape/"); } //Start the first scrape $client->SetScrapeStatus($myScrapes[0]->ID, "Start"); if (count($myScrapes[0]->Results) > 0) { //re-send first scrape result if it exists $client->SendResult($myScrapes[0]->ID, $myScrapes[0]->Results[0]->ID); }
گربزآٹ اسکریپ کلائنٹ کلاس کے تمام طریقے اور خصوصیات درج ہیں جن کو ویب سکریپس کو کنٹرول کرنے کے لئے استعمال کیا جاسکتا ہے۔