XPath — извлечь конкретное имя файла из строки

Я пытаюсь извлечь только имя файла из ссылки javascript в import.io, например, googlebolver.htm из href="javascript:finpopup('googlebolver.htm',920,620,0)"

Мне удалось перейти по «ссылке» (javascript:finpopup('googlebolver.htm',920,620,0)) со следующим XPath

//*[text()='GOOGLE.MAPS']/@href

но я хотел бы добраться до фактического адреса самостоятельно. Поскольку я использую import.io Extracto для нескольких URL-адресов, я хочу, чтобы он нашел что-то вроде *.htm

Я считаю, что это возможно с помощью функции подстроки, но я не знаю, как это сделать. Следующие вопросы этого сайта выглядели многообещающе, но один работает только для укусов фиксированной длины, а другой я не совсем понимаю и работает только для определенного «слова».

  1. Извлеките значение из объекта javascript на сайте, используя xpath и import.io
  2. Как использовать substring() с Import.io?

Заранее спасибо за вашу помощь

РЕДАКТИРОВАТЬ: Вот URL


person adamantium    schedule 25.08.2016    source источник
comment
Можете ли вы поделиться своим URL   -  person Andrew Fogg    schedule 25.08.2016
comment
@AndrewFogg Готово :-) Я использую поисковый XPath вместо местоположения, потому что некоторые другие страницы располагают его в другом порядке.   -  person adamantium    schedule 25.08.2016


Ответы (1)


Вы можете использовать функции XPath substring-after и substring-before, чтобы выделить текст после, скажем, (' и до ',

в вашем примере это будет

substring-before(substring-after(//*[text()='GOOGLE.MAPS']/@href,"('"),"',")

Примечание. Я не знаю, поддерживает ли import.io эти стандартные функции XPath.

person legrass    schedule 29.08.2016