| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Python: Общие вопросы > Разобрать xml файл... |
| Автор: ols 31.8.2006, 09:50 | ||||
| Есть xml файл. Нужно используя XPath выражение выбрать в некую переменную из этого файла значение некоторого узла... PyXML поставил, но с ходу что-то найти пример не могу. условно содержимое файла:
Xpath выражение:
|
| Автор: albertn 31.8.2006, 10:00 |
| А зачем PyXML, по-моему у питона есть и своя нормальная библиотека для работы с XML. Описание модуля: http://docs.python.org/lib/module-xml.dom.minidom.html http://docs.python.org/lib/dom-objects.html Пример: http://docs.python.org/lib/dom-example.html |
| Автор: albertn 31.8.2006, 10:16 | ||
А если в PyXML, то выглядеть должно где-то так
|
| Автор: ols 31.8.2006, 10:24 | ||
не знаю зачем... я тока начинаю разбираться с питоном... нашел вот http://mail.python.org/pipermail/python-list/2003-December/197961.html и решил что нужно - ведь мне именно XPath нужен. |
| Автор: albertn 31.8.2006, 10:30 | ||
Ну если именно XPath нужен, то да. Я кстати бегло просмотрел, эта библиотека просто добавляет несколько функций в основную библиотеку. Честно говоря никогда не использовал XPath, и не видел в нем необходимости. Может и зря конечно, но не юзал, не знаю. |
| Автор: ols 31.8.2006, 10:30 | ||||||
простите за глупый вопрос... а как в doc.documentElement считать содержимое файла? Добавлено @ 10:33
да я к нему просто привык очень, честно говоря не знаю, как без него обходится в oracle без него никак |
| Автор: albertn 31.8.2006, 10:44 | ||||
Если я не ошибаюсь, то должно выглядеть так:
По-идее должно работать, проверить не могу. |
| Автор: ols 31.8.2006, 11:06 | ||
получилось так:
но выводит он [<DOM Text node "ASD">] а как вывести просто ASD ? |
| Автор: albertn 31.8.2006, 11:10 | ||||
Вроде так:
|
| Автор: ols 31.8.2006, 11:18 |
| не работает... |
| Автор: albertn 31.8.2006, 11:21 | ||||
А, точто, должно быть так:
|
| Автор: J2A 31.8.2006, 11:25 | ||
|
| Автор: ols 31.8.2006, 11:40 |
| Отлично! Спасибо всем большое Осталось запихнуть это всё в модуль чтобы больше не вспоминать |
| Автор: albertn 31.8.2006, 11:41 | ||||
Сто-пудов, этож список. У меня просто вариантов небыло проверить, а на вывод не обратил внимание. |
| Автор: ols 31.8.2006, 12:44 | ||||
| готово. мой первый класс на питоне! Назначение: Читает файл ресурсов, написанный в xml, и возвращает нужную ноду по XPath. Прошу заценить и сильно не ругаться:
Пример использования:
PS Я случайно велосипед не изобрел? |
| Автор: albertn 31.8.2006, 13:07 | ||
Ну если так посмотреть, то ты ничего не изобрел А по сути комманде parse по-моему можно просто передать имя файла. Получать только значение nodeValue тоже не всегда надо. PS. Если это твой первый класс на питоне, то все вроде нормально, но с точки зрения применения разве что в некоторых случаях сократит запись, хотя и не факт:
|
| Автор: ols 31.8.2006, 13:32 |
| Спасибо. В питоне 3-й день... до этого кроме как на PL/SQL несколько лет уж ни на чем не писал... а там это делается совсем иначе поэтому и вопросов куча... |
| Автор: pythonwin 31.8.2006, 14:52 |
| ols, прерасно для 3-х дней. а какая СУБД? |
| Автор: J2A 31.8.2006, 15:08 | ||
Глупый вопрос. http://en.wikipedia.org/wiki/PLSQL - это однозначно Oracle. |
| Автор: pythonwin 31.8.2006, 15:45 |
а я думал что и другие SQL-ые СУБД могут поддерживать PL/SQL например PostgreSQL http://www.postgresql.org/files/documentation/books/pghandbuch/html/plpgsql.html когда устанавливал Postgresql под винду видел галочку PL/SQL Хотя сам на PL/SQL в PostgrSQL-е не писал. Добавлено @ 15:45 http://search.postgresql.org/www.search?cs=utf-8&fm=on&gr=on&o=0&ps=20&s=rate&q=PL%2FSQL&submit=Search |
| Автор: J2A 31.8.2006, 16:05 | ||
Может не будем уходить от основной темы? http://en.wikipedia.org/wiki/PL/pgSQL != http://en.wikipedia.org/wiki/PL/SQL. P.S. Ныне модно давать ссылки на немецкую документацию? |
| Автор: pythonwin 31.8.2006, 16:20 | ||
http://www.postgresql.org/docs/7.3/static/plpgsql.html
http://pgfoundry.org/projects/protopg На PL/SQL не писал, но IMHO, что его может поддерживать не только Oracle, хотя я могу и ошибаться... Добавлено @ 16:21 http://www.google.ru/search?sourceid=navclient-ff&ie=UTF-8&rls=GGGL,GGGL:2006-31,GGGL:ru&q=site%3Awww.postgresql.org+%22PL%2FSQL%22 |
| Автор: Cr@$h 31.8.2006, 17:56 | ||
|
| Автор: pythonwin 1.9.2006, 07:38 |
| Cr@$h, Дык... а уже поставил... Но ничего думаю, что albertn, не растроиться. |
| Автор: albertn 1.9.2006, 08:52 | ||
Не обижусь Спасибо |
| Автор: pythonwin 1.9.2006, 08:56 |
Пожалуйста! |