Новый парсер alexa traffic rank
Всем привет! Сегодня я вам покажу, как написать новый парсер alexa traffic rank, который работает исключительно только в PHP5. В прошлую среду мы как раз разбирали новый парсер feedburner, который парсит данные с помощью SimpleXML.
Ну что, приступим!
Для начала нам нужно получить содержимое страницы с нашими данными, которое представлено в формате xml документа. Чтобы получить это содержимое мы воспользуемся функцией simplexml_load_file. В качестве параметра мы будет передавать, так сказать “API” ссылку с доменом нашего сайта.
Пример получения содержимого:
$url = "makarou.com";
$file = simplexml_load_file('http://data.alexa.com/data?cli=10&dat=snbamz&url='.$url);
Далее, когда мы получили содержимое страницы, мы можем пройтись по нему и получить нужное значение.
Пример содержимого страницы:
<ALEXA VER="0.9" URL="makarou.com/" HOME="0" AID="="> <RLS PREFIX="http://" more="0"> </RLS> <SD TITLE="A" FLAGS="" HOST="makarou.com"> </SD> <SD> <POPULARITY URL="makarou.com/" TEXT="291636"/> <REACH RANK="258603"/> <RANK DELTA="-10993978"/> </SD> </ALEXA>
Тут нам нужно получить значение атрибута TEXT, который находится в объекте POPULARITY.
Чтобы получить это значение мы пройдемся по документу, и получим то что нам нужно.
Пример получения значения:
$alexa = $file->SD[1]->POPULARITY['TEXT'];
Полный код – парсер alexa traffic rank:
$url = "makarou.com";
$file = simplexml_load_file('http://data.alexa.com/data?cli=10&dat=snbamz&url='.$url);
$alexa = $file->SD[1]->POPULARITY['TEXT'];
echo 'Alexa rank: '.$alexa;
Посмотреть – demo.
Вот в принципе и всё. Легкое и удобное решение. Моё мнение, если на хостинге стоит PHP5 то лучше пользоваться этим методом, чем использовать регулярки.
На сегодня это всё! До скорых встреч.
зачем миллион раз одинаковый парсер делать…
разные способы по своему хороши
axel, на SimpleXML лучший вариант ( жаль такое чудо только в пхп5 появилось )
So so Def, а как с потоками? Не обзывает ботом?
не ботом не обзывает)