Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Perl: Общие вопросы > требуется помощь в xml.yandex


Автор: sergey_ 17.3.2007, 21:13
Хочу сделать автоматический подсчет беков получая информацию посредством xml.yandex

есть запрос xml запрос:
Код

<?xml version='1.0' encoding='windows-1251'?>
<request>
    <query>link=&quot;www.ru&quot;</query>
    <page>0</page>
    <maxpassages>0</maxpassages>
    <groupings>
        <groupby attr='d' mode='deep' groups-on-page='20' docs-in-group='1' curcateg='-1'/>
    </groupings>
</request>

получаем xml документ:

Код

  <?xml version="1.0" encoding="utf-8" ?> 
- <yandexsearch version="1.0">
- <request>
  <query>link="www.ru"</query> 
  <page>0</page> 
  <sortby order="descending" priority="yes">rlv</sortby> 
  <maxpassages>2</maxpassages> 
- <groupings>
  <groupby attr="d" mode="deep" groups-on-page="20" docs-in-group="1" curcateg="-1" /> 
  </groupings>
  </request>
- <response date="20070317T174745">
+ <reqwizard level="0">
- <Url level="0">
  <link /> 
  </Url>
- <Currency level="0">
  <linkusd /> 
  <linkeur /> 
  </Currency>
- <KeyboardLayout level="0">
  <request /> 
  <querystring /> 
  </KeyboardLayout>
- <Unquote level="0">
  <request /> 
  <querystring /> 
  </Unquote>
- <Volapyuk level="0">
  <request /> 
  <querystring /> 
  </Volapyuk>
- <Misspell level="0">
  <request /> 
  <querystring /> 
  </Misspell>
- <ExpandContext level="0">
  <spcctx /> 
  <querystring /> 
  </ExpandContext>
- <Weather level="0">
  <city /> 
  <cityid /> 
  <weather /> 
  </Weather>
  </reqwizard>
  <reqid>500986411</reqid> 
  <found priority="phrase">0</found> 
  <found priority="strict">52477</found> 
  <found priority="all">52477</found> 
- <results>
- <grouping attr="d" mode="deep" groups-on-page="20" docs-in-group="1">
  <found priority="phrase">0</found> 
  <found priority="strict">1646</found>
  <found priority="all">1646</found> 
  <page first="1" last="20">0</page> 

.... пропужены <group>......

  </grouping>
  </results>
  </response>
  </yandexsearch>


в строке <found priority="strict">52477</found> - содержиться кол-во страниц.
в строке <found priority="strict">1646</found> - содержиться кол-во сайтов.

подскажите как при помощи модуля XML::XPath для perl вынуть эти 2 значения?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)