Получить значение узла XML с помощью AutoHotKey и XPath - PullRequest
0 голосов
/ 18 марта 2011

Я пытался прочитать узел в XML-файле, сгенерированном из DSLR Remote Pro, но пока не смог сделать это правильно. Он продолжает возвращать пустую строку. То, что я пытаюсь сделать, это получить адрес электронной почты из следующего XML.

email.xml

<?xml version="1.0" ?>
<breeze_systems_photobooth version="1.0">
<photo_information>
  <date>2011/02/24</date>
  <time>12:55:31</time>
  <user_data>test@domain.com</user_data>
  <photobooth_images_folder>C:\Program Files\BreezeSys\DSLR Remote Pro\PhotoboothImages\Masquerade_1</photobooth_images_folder>
  <photos>
    <photo image="1">IMG_0004.JPG</photo>
    <output>prints\20110224_125531.jpg</output>
  </photos>
</photo_information>
</breeze_systems_photobooth>

get_email.ahk

#Include xpath.ahk ; include functions (only required if it is not in your
standard library)   ; parsing
documents:  xml :=
xpath_load("email.xml") ; load an XML
document email := xpath(xml,"/breeze_systems_photobooth/photo_information/user_data/text()")
MsgBox, %email%

Что мне здесь не хватает?

Примечание: Я нахожусь на WinXP, AutoHotKey v1.0.92.02 и XPath 3.14 от https://github.com/polyethene/autohotkey-scripts/raw/master/xpath.ahk

Ответы [ 2 ]

1 голос
/ 18 марта 2011

Хорошее выражение XPath.

Вы уверены, что файл загружается правильно?


РЕДАКТИРОВАТЬ: Можете ли вы попробовать что-то вроде этого?

xpath_load(xml, "email.xml")
email := xpath(xml,"/breeze_systems_photobooth/photo_information/user_data/text()")
0 голосов
/ 01 августа 2014

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

Также кажется, что xpath больше не поддерживается: xpath больше не поддерживается

...