изо всех сил пытается нажать на ссылку в htmlunit - PullRequest
3 голосов
/ 09 марта 2011

У меня проблема с переходом по ссылке в htmlunit.Я просмотрел API на сайте (который я не очень хорошо понимал) и просмотрел весь пример кода, который я смог найти, и у меня все еще остается проблема с нажатием на ссылки.

Вот верхняя частьсообщение об ошибке (довольно большое, если хотите, я могу отправить все)

"page2 = link2.click() Exception class=[net.sourceforge.htmlunit.corejs.javascript.JavaScriptException] com.gargoylesoftware.htmlunit.ScriptException: Sys.ArgumentOutOfRangeException: Sys.ArgumentOutOfRangeException: Value must be an integer. Parameter name: x Actual value was Infinity. "

Первая страница загружается нормально, но когда я нажимаю на вторую ссылку, я получаю эту ошибку (ссылка - javascript).Вот части моего кода

       page = webclient.getPage(url) 
   anchors1 =  page.getAnchors()
   for anchor in anchors1:
        if anchor.asText() == "2":
            link2 = anchor
            break
   page2 = link2.click()

Если я сделаю ссылку для печати2, я получу: HtmlAnchor[<a href="javascript:__doPostBack('ctl00$MainContent$gvSearchResults','Page$2')">]

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

Так растеряно .. помогите: -)

Заранее спасибо!

1 Ответ

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

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

Проблема, похоже, связана с параметром x, который имеет значение Infinity во время выполнения.

...