Sok xml elemzőt láttam, de nem érintettem a webes programozást. Most szeretném megtudni és megtanulni veled, hogyan készítsünk egyszerű xml-elemzőt php-ben.
Minek? Szükséges!
Nem, igazából: az xml fájlok nagyon hasznosak. És minden szakembernek... nem, nem szabad, de tudnia kell, hogyan kell velük dolgozni. Profik akarunk lenni, nem? Ha a blogomon vagy, akkor van egy ilyen vágyad.
Feltételezzük, hogy tudjuk, mi az XML, és nem írjuk le itt. Nos, ha nem tudnánk, itt könnyen megtudhatjuk: http://ru.wikipedia.org/wiki/XML
Miközben az XML PHP-ben való elemzésének módjait kerestem, felfedeztem egy egyszerű PHP függvénykészletet az XML fájlokkal való munkavégzéshez, az úgynevezett "XML Parser Functions". Az elemzés az értelmező inicializálásával kezdődik az xml_parser_create függvény meghívásával:
$xml_parser = xml_parser_create();
Ezután meg kell mondanunk az elemzőnek, hogy mely függvények dolgozzák fel az xml-címkéket és a szöveges információkat, amelyekkel az elemzési folyamat során találkozik. Azok. telepítenie kell néhány kezelőt:
xml_set_element_handler($xml_parser, "startElement", "endElement");
Ez a funkció felelős az elem kezdő és végkezelők beállításáért. Például, ha egy kombináció előfordul egy xml fájl szövegében, akkor a startElement függvény akkor fog működni, amikor az elemző megtalálja az elemet, az endElement függvény pedig akkor, amikor megtalálja.
A startElement és az endElement függvények a php dokumentációja szerint több paramétert is igénybe vesznek:
function startElement($parser, $name, $attrs) { // $parser - уникальный идентификатор парсера // (т.к. мы можем использовать несколько парсеров) // $name - имя обнаруженного элемента // $attrs - массив атрибутов обнаруженного элемента } function endElement($parser, $name) { // $parser - уникальный идентификатор парсера // $name - имя обнаруженного элемента } ?>
De hogyan lehet adatokat olvasni egy fájlból? Ennek még egyetlen paraméterét sem láttuk egyik függvényben sem! Erről pedig később: a fájl beolvasása a programozó feladata, i.e. a fájlokkal való munkavégzéshez a szabványos függvényeket kell használnunk:
if (!($fp = fopen($file, "r"))) { die("could not open XML input"); } ?>
Megnyitotta a fájlt. És most soronként el kell olvasnia, és az olvasott sorokat be kell töltenie az xml_parse függvénybe:
while ($data = fgets($fp)) {
if (!xml_parse($xml_parser, $data, feof($fp))) {
echo "
XML-hiba: ".xml_error_string(xml_get_error_code($xml_parser)); echo " at ".xml_get_current_line_number($xml_parser); break; ) ) ?>
Itt két nagyon fontos dolgot emelünk ki. Az első az, hogy az xml_parse függvény harmadik paramétere az utolsó sor olvasásához szükséges jelző átadása (igaz, ha a sor az utolsó, hamis, ha nem). A második az, hogy mint minden üzletben, itt is figyelnünk kell a hibákra. Az xml_get_error_code és az xml_error_string függvények felelősek ezért. Az első függvény megkapja a hibakódot, a második pedig a hiba szöveges leírását adja vissza a kapott kód alapján. Mi fog történni a hiba eredményeként - később megfontoljuk. Nem kevesebb mint hasznos funkció Az xml_get_current_line_number megmondja nekünk a fájl aktuálisan feldolgozott sorának számát.
És mint mindig, most is fel kell szabadítani a rendszer által elfoglalt erőforrásokat. XML-elemzéshez ez az xml_parser_free függvény:
xml_parser_free($xml_parser);
Itt megvizsgáltuk a fő funkciókat. Ideje látni őket működés közben. Ehhez egy nagyon egyszerű szerkezetű xml fájlt készítettem:
123
Nevezzük ezt a fájlt data.xml-nek, és próbáljuk meg elemezni a következő kóddal:
function startElement($parser, $name, $attrs) {
global $depth;
echo str_repeat(" ", $depth * 3); // отступы
echo "Elem: $name
"; // elem neve $depth++; // a mélység növelése, hogy a böngésző behúzást jelenítsen meg foreach ($attrs mint $attr => $value) (>echo str_repeat(" ", $depth * 3); // behúzás // megjelenített név attribútuma és értéke echo "Attribútum: ".$attr." = ".$value."
"; ) ) függvény endElement($elemző, $név) ( globális $mélység; $mélység--; // mélység csökkentése ) $depth = 0; $file = "data.xml"; $xml_parser = xml_parser_create(); xml_set_element_handler ($xml_parser, "startElement", "endElement"); if (!($fp = fopen($file, "r"))) ( die("nem sikerült megnyitni az XML bemenetet"); ) while ($data = fgets ($fp)) ( if (!xml_parse($xml_parser, $data, feof($fp)))) ( echo "
XML-hiba: "; echo xml_error_string(xml_get_error_code($xml_parser)); echo " at " line ".xml_get_current_line_number($xml_parser); break; ) ) xml_parser_free($xml_parser); ?>
Az általunk kifejlesztett legegyszerűbb szkript eredményeként a böngésző a következő információkat jelenítette meg az ablakában:
Elem: ROOT
Elem: INFO
Tulajdonság: WHO = az enyém
Elem: CÍM
Tulajdonság: KVARTIRA=12
Attribútum: DOM=15
Elem: TELEFON
Próbáljuk meg elrontani az XML fájlt a címke cseréjével
Elem: ROOT
Elem: INFO
Tulajdonság: WHO = az enyém
Elem: CÍM
Tulajdonság: ULICA = az én utcám!!
Tulajdonság: KVARTIRA=12
Attribútum: DOM=15
Elem: TELEFON
XML-hiba: Nem egyező címke az 5. sorban
Azta! A hibaüzenetek működnek! És elég informatív.
Ó, még egy dolgot elfelejtettem... Nem jelenítettük meg a cím- és telefoncímkéken belüli szöveget. Kijavítjuk a hiányosságunkat - hozzáadunk egy szövegkezelőt az xml_set_character_data_handler függvény segítségével:
xml_set_character_data_handler($xml_parser, 'stringElement');
És adja hozzá magát a kezelő függvényt a kódhoz.
Most az XML-lel való munkát fogjuk tanulmányozni. Az XML a webhelyek közötti adatcsere formátuma. Nagyon hasonlít a HTML-hez, csak az XML engedélyezi a saját címkéit és attribútumait.
Miért van szükség XML-re az elemzéshez? Néha előfordul, hogy az elemezni kívánt webhelynek van egy API-ja, amely lehetővé teszi, hogy különösebb erőfeszítés nélkül megkapja, amit akar. Ezért azonnal tanácsot adjon – a webhely elemzése előtt ellenőrizze, hogy van-e API-ja.
Mi az API? Ez egy olyan funkciókészlet, amellyel kérést küldhet erre az oldalra, és megkaphatja a kívánt választ. Ez a válasz leggyakrabban XML formátumban érkezik. Tehát kezdjük el tanulmányozni.
Tegyük fel, hogy van XML-je. Lehet karakterláncban, fájlban tárolva, vagy kérésre kiszolgálható egy adott URL-re.
Legyen az XML egy karakterláncban tárolva. Ebben az esetben ebből a sorból kell létrehoznia egy objektumot a segítségével új SimpleXMLElement:
$str = "
Most van egy változónk $xml elemzett XML-lel rendelkező objektum kerül tárolásra. Az objektum tulajdonságainak elérésével hozzáférhet az XML-címkék tartalmához. Hogyan pontosan - egy kicsit lejjebb elemezzük.
Ha az XML fájlban van tárolva, vagy egy URL elérésével tér vissza (ami leggyakrabban így van), akkor használja a függvényt simplexml_load_file amely ugyanazt a tárgyat teszi $xml:
$xml = simplexml_load_file(fájl elérési útja vagy url);
Az alábbi példákban az XML-t fájlban vagy URL-ben tároljuk.
Legyen megadva a következő XML:
Nézzük meg egy alkalmazott nevét, életkorát és fizetését:
$xml = simplexml_load_file(fájl elérési útja vagy url); echo $xml->name; //megjeleníti a "Kolya" echo $xml->age; //kimenetek 25 echo $xml->fizetés; //1000-et ad ki
Amint látható, a $xml objektum a címkéknek megfelelő tulajdonságokkal rendelkezik.
Talán észrevetted, hogy a címke
$xml = simplexml_load_file(fájl elérési útja vagy url); echo $xml->name; //megjeleníti a "Kolya" echo $xml->age; //kimenetek 25 echo $xml->fizetés; //1000-et ad ki
Az XML-ben csak egy gyökércímke lehet, akárcsak a gyökércímke sima HTML-ben.
Módosítsuk egy kicsit az XML-ünket:
Ebben az esetben egy hívásláncot kapunk:
$xml = simplexml_load_file(fájl elérési útja vagy url); echo $xml->dolgozó->név; //megjeleníti "Kolya" echo $xml->worker->age; //25-öt ad ki echo $xml->dolgozó->bér; //1000-et ad ki
Néhány adatot tároljunk attribútumokban:
$xml = simplexml_load_file(fájl elérési útja vagy url); echo $xml->dolgozó["név"]; //megjeleníti "Kolya" echo $xml->worker["age"]; //kimenet 25 echo $xml->dolgozó["fizetés"]; //kimenetek 1000 echo $xml->worker; //kiírja az "1-es számot"
Az XML-ben a kötőjellel ellátott címkék (és attribútumok) megengedettek. Ebben az esetben az ilyen címkék a következőképpen érhetők el:
$xml = simplexml_load_file(fájl elérési útja vagy url); echo $xml->dolgozó->(keresztnév); //megjeleníti "Kolya" echo $xml->worker->(last-name); //megjeleníti az "Ivanov" kifejezést
Most ne egy munkásunk legyen, hanem több. Ebben az esetben egy foreach ciklussal iterálhatjuk az objektumunkat:
$xml = simplexml_load_file(fájl elérési útja vagy url); foreach ($xml mint $worker) ( echo $worker->name; //kiírja: "Kolya", "Vasya", "Petya" )
Ha nem érzi jól magát egy objektummal dolgozni, a következő trükkel átalakíthatja azt normál PHP tömbbé:
$xml = simplexml_load_file(fájl elérési útja vagy url); var_dump(json_decode(json_encode($xml), true));
Egy webhely gyakran tartalmaz egy sitemap.xml fájlt. Ez a fájl a webhely összes oldalára mutató hivatkozásokat tárol a keresőmotorok általi indexelés megkönnyítése érdekében (az indexelés valójában a webhely Yandex és Google általi elemzése).
Általában nem kell sokat törődnünk azzal, hogy miért van szükség erre a fájlra, a lényeg az, hogy ha létezik, akkor ne mászhasson fel az oldal oldalain semmilyen trükkös módszerrel, hanem egyszerűen használja ezt a fájlt.
A fájl meglétének ellenőrzése: elemezzük a site.ru webhelyet, majd keresse fel a site.ru/sitemap.xml fájlt a böngészőben - ha lát valamit, akkor ott van, és ha nem látja, akkor sajnos.
Ha van webhelytérkép, akkor az XML formátumban tartalmazza a webhely összes oldalára mutató hivatkozásokat. Nyugodtan vegye ezt az XML-t, elemezze, különítse el a szükséges oldalakra mutató hivatkozásokat az Ön számára megfelelő módon (például a spider módszernél leírt URL elemzésével).
Ennek eredményeként megkapja az elemzéshez szükséges linkek listáját, és csak rá kell mennie, és elemeznie kell a szükséges tartalmat.
További információ a sitemap.xml eszközről a wikipédiában.
Kezdje el a feladatok megoldását az alábbi linken: feladatok a leckéhez.
Ha minden eldőlt, folytassa egy új téma tanulmányozásával.
XML elemző egy olyan program, amely kivonja az adatokat egy forrás xml fájlból, és elmenti vagy felhasználja a későbbi műveletekhez.
Miért van szükség xml-elemzőkre?
Először is azért, mert maga az xml formátum népszerű a számítógépes szabványok között. Az XML fájl így néz ki:
azok. valójában vannak címkék, van néhány szabály, hogy melyik címkéknek követniük kell egymást.
A népszerűség oka xml fájlokat az, hogy jól olvasható az ember számára. És az, hogy viszonylag könnyen feldolgozható programokban.
Az xml fájlok hátrányai.
A hátránya elsősorban nagyszámú az adatok által elfoglalt lemezterület. Tekintettel arra, hogy a folyamatosan ismétlődő, nagy adatmennyiséggel rendelkező címkék viszonylag sok megabájtot foglalnak el, amit egyszerűen le kell tölteni a forrásból, majd feldolgozni. Vannak alternatívák? Természetesen vannak, de az xml és az xml elemzők ma az egyik legegyszerűbb és legmegbízhatóbb és technológiailag legnépszerűbb formátum.
Hogyan íródnak az XML-elemzők?
Az elemzők programozási nyelveken vannak megírva. Ahogy mondani szokták, mindenkinek meg vannak írva, de egyeseknek már nem. Meg kell érteni, hogy vannak olyan programozási nyelvek, amelyek már rendelkeznek beépített könyvtárakkal az xml fájlok elemzéséhez. De mindenesetre, még ha nincs is könyvtár, mindig találhat erre az esetre megfelelő könyvtárat, és ezzel kinyerheti az adatokat egy fájlból.
Globálisan 2 különböző megközelítés létezik az xml-fájlok elemzésére.
Az első az xml fájl teljes betöltése a memóriába, majd adatkinyerési műveletek elvégzése.
A második a streaming lehetőség. Ebben az esetben a programozási nyelv meghatároz bizonyos címkéket, amelyekre a létrehozott xml elemző funkcióinak válaszolniuk kell, és a programozó maga dönti el, hogy mit tegyen, ha egy adott címkét talál.
Az első megközelítés előnye a gyorsaság. Azonnal betöltöttem a fájlt, majd gyorsan átfutottam a memórián és megtaláltam, amire szükségem volt, és ami a legfontosabb, könnyű volt programozni. de van egy mínusz és egy nagyon fontos - ez
a működéshez nagy mennyiségű memória szükséges. Néha, mondhatnám, gyakran előfordul, hogy egyszerűen lehetetlen egy xml fájlt feldolgozni és elemezni, pl. hozzon létre egy xml-elemzőt, hogy az megfelelően működjön az első módszer szerint. Miert van az? Nos, például a Windows alatti 32 bites alkalmazások korlátozása lehetővé teszi, hogy a program legfeljebb 2 gigabájt memóriát foglaljon el – nem többet.
Az inline programozás azonban nehéz. A bonyolultság kellően komoly kitermeléssel sokszorosára nő, ami ennek megfelelően kihat az időzítésre és a költségvetésre is.
Az xml fájlok és elemzők érvényessége.
Minden rendben lenne az xml fájlokkal és az xml elemzőkkel, de van egy probléma. Tekintettel arra, hogy "bármelyik iskolás" tud xml fájlt készíteni, de a valóságban az (mivel sok kódot írnak az iskolások, érvénytelen fájlok jelennek meg, azaz hibásak. Mit jelent ez és mit tartalmaz A legnagyobb probléma az, hogy egyszerűen lehetetlen néha helyesen elemezni egy érvénytelen fájlt.Például a címkéi nincsenek bezárva a szabvány által elvárt módon, vagy például a kódolás helytelenül van beállítva.A másik probléma az, hogy ha pl csinálsz egy értelmezőt a .net-en, csinálhatsz úgynevezett wrappereket, és a legbosszantóbb az, hogy csinálsz egy ilyen wrapper-et, majd elolvasod azt a fájlt, amit a "diák" készített, és a fájl érvénytelen és lehetetlen olvasni. Ezért haragudnia kell, és nagyon-nagyon népszerűtlen lehetőségekhez kell folyamodnia az ilyen fájlok elemzéséhez. \u003d mert sokan szabványos könyvtárak használata nélkül hoznak létre xml fájlokat, és teljes undorral minden xml fájlszabványtól. Nehéz az ügyfeleknek ezt elmagyarázni.Várják az eredményt - egy xml-elemzőt, amely az adatokat az eredeti fájlból más formátumba konvertálja.
XML-elemzők létrehozása (első lehetőség)
Az XML adatokhoz létezik egy ilyen lekérdezési nyelv, mint az Xpath. Ennek a nyelvnek két kiadása van, nem foglalkozunk az egyes verziók jellemzőivel. Ha jobban megérti ezt a nyelvet, akkor példákat fog mutatni arra, hogyan kell használni az adatok kinyerésére. Például.
//div[@class="supcat guru"]/a
mit tesz ez a kérés. Minden olyan címkére van szükség, amelynek gerince tartalmazza a catalog.xml?hid= szöveget, és egy címkének gyermek divnek kell lennie, amelynek osztálya supcat guru.
Igen, elsőre lehet, hogy nem elég egyértelmű, de akkor is kitalálhatod, ha akarod. A kiindulópont számomra a http://ru.wikipedia.org/wiki/XPath, és azt tanácsolom.
A minap elkezdtem átdolgozni cégem belső jelentési rendszerét, melynek általános felépítéséről nem is olyan régen írtam. Előítéletek nélkül elmondom, hogy PHP terén magam fölé nőttem, és ennek eredményeként rájöttem, hogy a rendszer algoritmusa elég ferde ahhoz, hogy átírjam.
Ezt megelőzően az XML dokumentumot a PHP 4. verziójából kölcsönzött függvényekkel elemezték. A PHP5 azonban egy nagyon praktikus dolgot adott a világnak, a SimpleXML-t. Hogyan kell vele dolgozni, és ma lesz szó róla.
Érdemes azzal kezdeni, hogy a SimpleXML egy külön beépülő modul, ezért előzetesen csatlakoztatni kell a használt szerveren.
Most már dolgozhatunk!
A dokumentum feldolgozásához a simplexml_load_file() függvényt használjuk. Paraméterként egy fájl címét adja át az eXtended Markup Language (XML – Your K.O.) formátumban.
Ennek a funkciónak az a szépsége, hogy könnyedén átvihet fájlokat bármelyik szerverről arra. Így lehetőségünk van külső xml-feltöltések feldolgozására (például Yandex-XML vagy harmadik féltől származó RSS-hírcsatornák).
A függvény kimenete egy tömb. A buktató, amellyel találkoztam, az, hogy az XML-nek nehézkes felépítése lehet, ezért azt tanácsolom, hogy kezdje a figuratív nyomkövetéssel, és adjon ki egy tömböt, hogy megértse, hogyan dolgozta fel a függvény azt. Ezt követően megkezdheti a kapott adatok feldolgozását.
Például egy egyszerű konstrukciót innen veszek:
>
>
Tehát ez egy nyelv. Ez még mindig egy programozási nyelv. Vagy
ez egy script nyelv? Ebből a dokumentumfilmből minden kiderül
horrorfilmhez hasonló.
>
>
>
Legyen ez az export.xml fájl, amely közvetlenül a szerverem gyökerében található, az azt feldolgozó szkripttel együtt.
A tömb az XML dokumentum DOM-elemeinek szerkezete szerint épül fel. A feldolgozás a gyökértől kezdődik. A név megszerzéséhez Ms. Coder, a következő elérési utat kell megépítenünk: $xml->movies->movie->characters->character->name.
Felhívom a figyelmet arra, hogy konkrét értéket választunk. Innen származik az ilyen jellegű karakterek rekordja – ne felejtsük el, hogy tömbbel dolgozunk!
Mint minden tömb, adataink is feldolgozhatók foreach ciklus segítségével. A kód így lesz:
$xml = simplexml_load_file("export.xml" ) ; //feltöltötte a fájlt
$ttl = $xml -> filmek -> film -> cím ; //kapja meg a fejlécet. ez egy, tehát nem kell másik értéket beállítania
foreach ($xml -> filmek -> film -> karakterek mint $crc) // és most dolgozzunk a dinamikán
{
//nyomtassa ki a hősök nevét
$név = $crc -> karakter -> név ;
visszhang(" $név
"
)
;
}
Ez a kód a „PHP: Megjelenik az elemző” szöveget helyezi a $ttl változóba, majd soronként megjeleníti a képernyőn a karakterek nevét.
Kisasszony. Kódoló, Mr. Kódoló, Mr. elemző.
Most az XML-lel való munkát fogjuk tanulmányozni. Az XML a webhelyek közötti adatcsere formátuma. Nagyon hasonlít a HTML-hez, csak az XML engedélyezi a saját címkéit és attribútumait.
Miért van szükség XML-re az elemzéshez? Néha előfordul, hogy az elemezni kívánt webhelynek van egy API-ja, amely lehetővé teszi, hogy különösebb erőfeszítés nélkül megkapja, amit akar. Ezért azonnal tanácsot adjon – a webhely elemzése előtt ellenőrizze, hogy van-e API-ja.
Mi az API? Ez egy olyan funkciókészlet, amellyel kérést küldhet erre az oldalra, és megkaphatja a kívánt választ. Ez a válasz leggyakrabban XML formátumban érkezik. Tehát kezdjük el tanulmányozni.
Tegyük fel, hogy van XML-je. Lehet karakterláncban, fájlban tárolva, vagy kérésre kiszolgálható egy adott URL-re.
Legyen az XML egy karakterláncban tárolva. Ebben az esetben ebből a sorból kell létrehoznia egy objektumot a segítségével új SimpleXMLElement:
$str = "
Most van egy változónk $xml elemzett XML-lel rendelkező objektum kerül tárolásra. Az objektum tulajdonságainak elérésével hozzáférhet az XML-címkék tartalmához. Hogyan pontosan - egy kicsit lejjebb elemezzük.
Ha az XML fájlban van tárolva, vagy egy URL elérésével tér vissza (ami leggyakrabban így van), akkor használja a függvényt simplexml_load_file amely ugyanazt a tárgyat teszi $xml:
$xml = simplexml_load_file(fájl elérési útja vagy url);
Az alábbi példákban az XML-t fájlban vagy URL-ben tároljuk.
Legyen megadva a következő XML:
Nézzük meg egy alkalmazott nevét, életkorát és fizetését:
$xml = simplexml_load_file(fájl elérési útja vagy url); echo $xml->name; //megjeleníti a "Kolya" echo $xml->age; //kimenetek 25 echo $xml->fizetés; //1000-et ad ki
Amint látható, a $xml objektum a címkéknek megfelelő tulajdonságokkal rendelkezik.
Talán észrevetted, hogy a címke
$xml = simplexml_load_file(fájl elérési útja vagy url); echo $xml->name; //megjeleníti a "Kolya" echo $xml->age; //kimenetek 25 echo $xml->fizetés; //1000-et ad ki
Az XML-ben csak egy gyökércímke lehet, akárcsak a gyökércímke sima HTML-ben.
Módosítsuk egy kicsit az XML-ünket:
Ebben az esetben egy hívásláncot kapunk:
$xml = simplexml_load_file(fájl elérési útja vagy url); echo $xml->dolgozó->név; //megjeleníti "Kolya" echo $xml->worker->age; //25-öt ad ki echo $xml->dolgozó->bér; //1000-et ad ki
Néhány adatot tároljunk attribútumokban:
$xml = simplexml_load_file(fájl elérési útja vagy url); echo $xml->dolgozó["név"]; //megjeleníti "Kolya" echo $xml->worker["age"]; //kimenet 25 echo $xml->dolgozó["fizetés"]; //kimenetek 1000 echo $xml->worker; //kiírja az "1-es számot"
Az XML-ben a kötőjellel ellátott címkék (és attribútumok) megengedettek. Ebben az esetben az ilyen címkék a következőképpen érhetők el:
$xml = simplexml_load_file(fájl elérési útja vagy url); echo $xml->dolgozó->(keresztnév); //megjeleníti "Kolya" echo $xml->worker->(last-name); //megjeleníti az "Ivanov" kifejezést
Most ne egy munkásunk legyen, hanem több. Ebben az esetben egy foreach ciklussal iterálhatjuk az objektumunkat:
$xml = simplexml_load_file(fájl elérési útja vagy url); foreach ($xml mint $worker) ( echo $worker->name; //kiírja: "Kolya", "Vasya", "Petya" )
Ha nem érzi jól magát egy objektummal dolgozni, a következő trükkel átalakíthatja azt normál PHP tömbbé:
$xml = simplexml_load_file(fájl elérési útja vagy url); var_dump(json_decode(json_encode($xml), true));
Egy webhely gyakran tartalmaz egy sitemap.xml fájlt. Ez a fájl a webhely összes oldalára mutató hivatkozásokat tárol a keresőmotorok általi indexelés megkönnyítése érdekében (az indexelés valójában a webhely Yandex és Google általi elemzése).
Általában nem kell sokat törődnünk azzal, hogy miért van szükség erre a fájlra, a lényeg az, hogy ha létezik, akkor ne mászhasson fel az oldal oldalain semmilyen trükkös módszerrel, hanem egyszerűen használja ezt a fájlt.
A fájl meglétének ellenőrzése: elemezzük a site.ru webhelyet, majd keresse fel a site.ru/sitemap.xml fájlt a böngészőben - ha lát valamit, akkor ott van, és ha nem látja, akkor sajnos.
Ha van webhelytérkép, akkor az XML formátumban tartalmazza a webhely összes oldalára mutató hivatkozásokat. Nyugodtan vegye ezt az XML-t, elemezze, különítse el a szükséges oldalakra mutató hivatkozásokat az Ön számára megfelelő módon (például a spider módszernél leírt URL elemzésével).
Ennek eredményeként megkapja az elemzéshez szükséges linkek listáját, és csak rá kell mennie, és elemeznie kell a szükséges tartalmat.
További információ a sitemap.xml eszközről a wikipédiában.
Kezdje el a feladatok megoldását az alábbi linken: feladatok a leckéhez.
Ha minden eldőlt, folytassa egy új téma tanulmányozásával.