XPath петля с селеном и перлом - PullRequest
0 голосов
/ 09 июля 2010

Я пытаюсь извлечь все значения имени в полях ввода, используя селен и perl. Часть значения, достаточная для его идентификации, известна, остальная часть неизвестна:

Этот xpath работает при поиске всех подходящих совпадений:

//tr/td//input[contains(@name,'partofname')]

Итак, в perl:

my $xpath = qq(//tr/td//input[contains(\@name,'partofname')]);
my $count = $sel->get_xpath_count($xpath);

Хорошо, $ count дает подходящее количество совпадений.

Однако как извлечь значение атрибута @name для каждого отдельного совпадения?

Я понимаю, что принцип заключается в создании цикла:

foreach my $row (1 .. $count) {
#extract here
};

Однако я не могу сконструировать выражение xpath, которое будет работать для поиска каждой строки $, с которой совпадает выражение. Поэтому я думаю, что это правильное выражение xpath для получения каждого отдельного соответствия, с которым мне нужна помощь.

Любые указатели оценены

1 Ответ

1 голос
/ 09 июля 2010

Попробуйте //tr/td/descendant::input[contains(@name,'partofname')][1]

Замените 1 своим счетчиком. Если этого не произойдет, не могли бы вы добавить немного HTML в свой вопрос, чтобы я мог предложить лучший XPath?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...