Crawler သည်အင်တာနက်မှသတင်းအချက်အလက်များကိုစုဆောင်းရန်ဒီဇိုင်းပြုလုပ်ထားသောအလိုအလျောက်အစီအစဉ်တစ်ခုဖြစ်သည်။ ၎င်းသည် browser ကိုအပြုအမူကိုတုပကာ 0 န်ထုပ်သောစာမျက်နှာများကိုရယူသည်။ အစွမ်းထက်သော server-side scripting language တစ်ခုအနေဖြင့် PHP ကိုထိရောက်သောတယောအစီအစဉ်များကိုရေးရန်လည်းအသုံးပြုနိုင်သည်။
တွားတတ်သောတိရစ္ဆာန်များအတွက်ပထမခြေလှမ်းမှာ HTTP တောင်းဆိုမှုများမှတဆင့် destination ဝက်ဘ်စာမျက်နှာ၏ပါဝင်မှုကိုရယူရန်ဖြစ်သည်။ PHP သည် HTTP တောင်းဆိုမှုများကိုပို့ရန်နည်းလမ်းအမျိုးမျိုးကိုပေးသည်။ အရိုးရှင်းဆုံးနှင့်အသုံးအများဆုံးမှာ file_get_contents () function ကိုဖြစ်သည်။
$url = "http://example.com";
$html = file_get_contents($url);
HTML source code ကို 0 က်ဘ်စာမျက်နှာ၏ html source code ကိုတိုက်ရိုက်ရယူရန်နှင့်၎င်းကို variable ကို $ html တွင်သိမ်းထားရန် file_get_contontents () function ကိုသုံးပါ။
ဝဘ်စာမျက်နှာ၏ code ကိုရယူပြီးနောက် HTML သည်လိုအပ်သောသတင်းအချက်အလက်များကိုထုတ်ယူရန် HTML ကိုခွဲခြမ်းစိတ်ဖြာရန်လိုအပ်သည်။ PHP ၏ Built-in DomDocument Class သည် XML နှင့် HTML စာရွက်စာတမ်းများကိုကိုင်တွယ်ရန်အကောင်းဆုံးဖြစ်သည်။
$dom = new DOMDocument();
@$dom->loadHTML($html);
ဤနေရာတွင် Loadhtmm () နည်းလမ်းကို HTML string ကို dom data လုပ်ငန်းများကိုလွယ်ကူချောမွေ့စေရန် dom object အဖြစ်ပြောင်းလဲရန်အသုံးပြုသည်။ HTML ခွဲခြမ်းစိတ်ဖြာစဉ်အတွင်းသတိပေးမက်ဆေ့ခ်ျများကိုရှောင်ရှားရန် @ ထည့်ပါ။
XPATH ဆိုသည်မှာ XML နှင့် HTML စာရွက်စာတမ်းများရှိ node များကိုရှာဖွေရန်အသုံးပြုသောစုံစမ်းမှုဘာသာစကားဖြစ်သည်။ domxpath class နှင့်အတူပေါင်းစပ်ထားသောဝက်ဘ်စာမျက်နှာရှိပစ်မှတ်များကိုအလွယ်တကူရှာဖွေရန်နှင့်ထုတ်ယူနိုင်သည်။
$xpath = new DOMXPath($dom);
$elements = $xpath->query("//h1");
foreach ($elements as $element) {
echo $element->nodeValue;
}
အထက်ပါကုဒ်ကို XPhath Expression မှ "// H1" မှတဆင့်နေရာချထားသည်။
$url = "http://example.com";
$html = file_get_contents($url);
$dom = new DOMDocument();
@$dom->loadHTML($html);
$xpath = new DOMXPath($dom);
$elements = $xpath->query("//title");
if ($elements->length > 0) {
$title = $elements->item(0)->nodeValue;
echo $title;
} else {
echo "No title found";
}
ဤကုဒ်သည် 0 က်ဘ်စာမျက်နှာအရင်းအမြစ်ကုဒ်ကို ဦး စွာတောင်းဆိုသည်။ ထို့နောက် HTML ကိုခွဲခြမ်းစိတ်ဖြာခြင်းနှင့်နောက်ဆုံးတွင် XPath မှတဆင့်ရှာသည်