Разбор XML-данных с помощью скрипта Google - PullRequest
0 голосов
/ 27 февраля 2012

Я пытался преобразовать XML-канал в удобочитаемую форму, но безуспешно.Я пытался увидеть пример, приведенный в разделе tutorails, но он слишком сложный.Пожалуйста, может кто-нибудь помочь мне с тем, что должно быть сделано.Я могу делать хорошо до разбора XML.

Я использую скрипт Google, и вывод должен быть в Google Docs.

Вот то, что я до сих пор придумал

    var response = UrlFetchApp.fetch("http://getRecords.php?oauth_token=3e73c7&lat="+lat+"&lon="+lon+"&searchFor="+text+"&miles=100&response_type=xml");

  var doc = Xml.parse(response.getContentText(), true)
 var root = doc.getElement();
 var entryList = "<ul>\n";

 var entries = root.getElements("details");

  for (var i=0; i<entries.length; i++) {
  var e = entries[i];
  var name = e.getElement("name").getText();

  }



   entryList += "<li>name </li>" + name;


   entryList += "</ul>\n";
   return entryList;  

Вот XML

<record>
<details>
<id>212929</id>
<distance>0</distance>
<category cat="8" sub="202" id="1201">General</category>
<name>Text Book Center</name>
<short_desc>One of Kenya's finest</short_desc>
<long_desc>
One of Kenya's leading bookshops, the Text Book Center offers a wide selection of titles. There is everything here from textbooks to fiction to the latest Information Technology titles. The range of maps is especially impressive. The shop is spacious and cool, giving shoppers plenty of room to browse the shelves upon shelves of books. Look out for the regular special offers.
</long_desc>
<address>
<address1>Kijabe Street</address1>
<city>Nairobi</city>
<country>Kenya</country>
<latitude>0</latitude>
<longitude>0</longitude>
</address>
<neighborhood>Downtown</neighborhood>
<phone>+254 2 330 340</phone>
<email>info@tbc.co.ke</email>
<open_hours>8am-1pm; 2pm-5.30pm Mon-Sat.</open_hours>
</details>
</record>
</records>

как мне удалить теги и просто распечатать его в документах.Пожалуйста, помогите

спасибо

1 Ответ

1 голос
/ 29 февраля 2012

Похоже, отсутствует открывающий тег корневого узла.Это оригинальный документ?или просто вставьте ошибку?

Попробуйте вот так

var response = UrlFetchApp.fetch("http://getRecords.php?  oauth_token=3e73c7&lat="+lat+"&lon="+lon+"&searchFor="+text+"&miles=100&response_type=xml");
var doc = Xml.parse(response.getContentText(), true);
var records = doc.records.getElements("record");
var entryList = "<ul>\n";

for (var i=0; i < records.length; i++) {
    var details = records[i].details;
    var name = details.name.getText();
    entryList += "<li>" + name + "</li>\n";
}

entryList += "</ul>\n";
return entryList;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...