ویب پر گرفت اور تبدیل کرنے کے اوزار

ازگر کے لئے ویب سکریپر API ازگر سکریپر API

سب سے پہلے ڈاؤن لوڈ، اتارنا ازگر کے لئے ویب سکریپر API اور شروع کرنے کے لئے اندر موجود مثال ہینڈلر کو دیکھیں۔

سکریپڈ ڈیٹا پر کارروائی کریں

سکریپڈ ڈیٹا پر کارروائی کرنے کا آسان ترین طریقہ یہ ہے کہ JSON یا XML آبجیکٹ کے بطور اعداد و شمار تک رسائی حاصل کی جاسکے ، کیونکہ اس سے اعداد و شمار آسانی سے جوڑ توڑ اور باز پرس ہوجاتے ہیں۔ JSON کو مندرجہ ذیل عمومی شکل میں ڈیٹاسیٹ نام کے ساتھ شئے بنا کر رکھا جائے گا ، جس میں ہر ایک کالم کے نام کے ساتھ ایک اور وصف شامل ہے۔

{
  "Dataset_Name": [
    {
      "Column_One": "https://grabz.it/",
      "Column_Two": "Found"
    },
    {
      "Column_One": "http://dfadsdsa.com/",
      "Column_Two": "Missing"
    }]
}

سب سے پہلے یہ یاد رکھنا ضروری ہے کہ ہینڈلر کو تمام سکریپڈ ڈیٹا بھیجا جائے گا ، جس میں ایسا ڈیٹا شامل ہوسکتا ہے جو JSON یا XML اشیاء میں تبدیل نہیں ہوسکتا ہے۔ لہذا عمل کرنے سے پہلے آپ جو قسم کا ڈیٹا وصول کررہے ہیں اس کی جانچ پڑتال ضروری ہے۔

scrapeResult = ScrapeResult.ScrapeResult()

if scrapeResult.getExtension() == 'json':
    json = scrapeResult.toJSON()
    for json["Dataset_Name"] in 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.

سکریپ ریسلٹ کے طریقے

سکریپ ریسلٹ کلاس کے تمام طریقے ذیل میں درج ہیں جو کھرچنے کے نتائج پر کارروائی کرنے کے لئے استعمال ہوسکتے ہیں۔

  • string getExtension() - کھرچنی کے نتیجے میں کسی بھی فائل کی توسیع ملتی ہے۔
  • string getFilename() - کھرچنی کے نتیجے میں کسی بھی فائل کا فائل نام مل جاتا ہے۔
  • object toJSON() - کھرچنی کے نتیجے میں کسی بھی JSON فائل کو تبدیل کرتا ہے into ایک شے
  • string toString() - کھرچنے کے نتیجے میں کسی بھی فائل کو a میں تبدیل کرتا ہے string.
  • xml.etree.ElementTree toXML() - کھرچنے کے نتیجے میں کسی بھی XML فائل کو XML عنصر میں تبدیل کرتا ہے۔
  • boolean save(path) - saveکسی بھی فائل کو کھرچنے کے نتیجے میں ، اگر وہ کامیاب ہوجاتی ہے تو اس کی سچائی واپس آجاتی ہے۔

ٹھیک کرنا

اپنے ازگر ہینڈلر کو ڈیبگ کرنے کا بہترین طریقہ یہ ہے کہ نتائج کو کھرچنے کے لئے ڈاؤن لوڈ کرنا ویب سکریپس صفحہ، save جس فائل سے آپ کو پریشانی کا سامنا کرنا پڑتا ہے وہ قابل رسائی مقام تک پہنچ جاتی ہے اور پھر اس فائل کا راستہ اس سکریپ ریسلٹ کلاس کے کنسٹرکٹر کے پاس کردیتی ہے۔ جیسا کہ ذیل میں دکھایا گیا ہے ، ہر بار نیا کھرچنا کئے بغیر آپ کو اپنے ہینڈلر کو ڈیبگ کرنے کی اجازت دیتا ہے۔

scrapeResult = ScrapeResult.ScrapeResult("data.json");

#the rest of your handler code remains the same

کھرچنا کو کنٹرول کرنا

ازگر کے لئے گربزٹ کے ویب سکریپر API کے ذریعہ ، آپ ضرورت کے مطابق کسی کھرچ کو دور سے شروع ، روک سکتے ہیں ، اہل یا غیر فعال کرسکتے ہیں۔ یہ مندرجہ ذیل مثال میں دکھایا گیا ہے کہ کھرچنی کی شناخت کے ساتھ ساتھ نئی کھرچنی حیثیت کو بھی SetScrapeStatus طریقہ.

client = GrabzItScrapeClient.GrabzItScrapeClient("Sign in to view your Application Key", "Sign in to view your Application Secret")
//Get all of our scrapes
myScrapes = client.GetScrapes()
if (len(myScrapes) == 0)
{
    raise Exception('You have not created any scrapes yet! Create one here: https://grabz.it/scraper/scrape.aspx')
}
//Start the first scrape
client.SetScrapeStatus(myScrapes[0].ID, "Start")
if (len(myScrapes[0].Results) > 0)
{
    //re-send first scrape result if it exists
    client.SendResult(myScrapes[0].ID, myScrapes[0].Results[0].ID);
}

GrabzItScrapeClient طریقے اور خواص

گربزٹ اسکرائپ کلینٹ کلاس کے تمام طریقے اور خصوصیات درج ہیں جن کا استعمال ریاستی کھرچوں پر قابو پانے کے لئے کیا جاسکتا ہے۔

  • GrabzItScrape[] GetScrapes() - GrabzItScrape آبجیکٹ کی ایک صف کے بطور تمام صارفین کے سکریپ کو واپس کرتا ہے۔
  • GrabzItScrape GetScrape(id) - ایک GrabzItScrape آبجیکٹ کو مطلوبہ کھرچ کی نمائندگی کرتا ہے۔
  • SetScrapeProperty(id, property) - سیٹ کرتا ہے کھرچنی کی خاصیت اور اگر کامیاب ہو تو صحیح لوٹ آتا ہے۔
  • SetScrapeStatus(id, status) - کسی سکریپ کی حیثیت ("اسٹارٹ" ، "اسٹاپ" ، "قابل بنائیں" ، "غیر فعال") کا تعین کرتا ہے اور اگر کامیاب ہوتا ہے تو اس کا حق واپس آتا ہے۔
  • SendResult(id, resultId) - کھرچنا کے نتیجہ کو دوبارہ بھیجتا ہے اور اگر کامیاب ہوتا ہے تو سچ واپس آجاتا ہے۔
    • سکریپ آئی ڈی اور نتیجہ کی شناخت گیٹ اسکریپ کے طریقہ کار سے حاصل کی جاسکتی ہے۔
  • SetLocalProxy(proxyUrl) - مقامی درخواستوں کے سرور کو تمام درخواستوں کے استعمال کے ل sets مقرر کرتا ہے۔