최근 Null을 반환하는 HtmlUnit에 몇 가지 문제가있어 지침을 찾고 있습니다. 각 웹 사이트의 첫 번째 행을 잡아 내 결과는 null을 반환했습니다. 나는 그들이 null을 반환 할 이유 누군가가Groovy htmlunit getFirstByXPath null + OCR을 반환합니다. Question
A) 설명 할 수 있는지 궁금
B) 몇 가지가있는 경우) 정보 다음은
를 받고 가야하는 (더 나은 방법을 설명 내 현재 코드 (URL는 소스에) :
client = new WebClient(BrowserVersion.FIREFOX_3)
client.javaScriptEnabled = false
def url = "http://www.hidemyass.com/proxy-list/"
page = client.getPage(url)
IpAddress = page.getFirstByXPath("//html/body/div/div/form/table/tbody/tr/td[2]").getValue()
println "IP Address is: $data" //returns null
//Port_Number is an Image
Country = page.getFirstByXPath("//html/body/div/div/form/table/tbody/tr/td[4][@class='country']/@rel").getValue()
println "Country abbreviation is: $Country"
//differentiate speed and connection by name of gif?
Type = page.getFirstByXPath("//html/body/div/div/form/table/tbody/tr/td[7]").getValue()
println "Proxy type is: $Type"
Anonymity = page.getFirstByXPath("//html/body/div/div/form/table/tbody/tr/td[8]").getValue()
println "Anonymity Level is: $Anonymity"
client.closeAllWindows()
지금 내 XPath의 모든 널 (null)과 .getValue() 분명히 널 (null)에서 작동하지 않습니다 반환합니다.
이미지이기 때문에 PORT에 대해 내가해야 할 일에 대해서도 질문이 있으십니까? 그것을 다운로드하고 OCR로 해결하려고 시도하는 것보다 나은 대안이 있습니까?
사이드 참고이 사이트에있는 아무 의미가 없습니다
, 난 그냥 (내가 조각 정체성의 문제로 마지막으로 실행 한에 긁어 연습 할 수 있고 얻을 수있는 사이트를 찾고 있었다 에 대한 답변 : HtmlUnit getByXpath returns null 및 HtmlUnit and Fragment Identities)
폼을 포함하는 XPath를 가져 오기 위해 방화 광구를 사용했습니다 (올바른 것으로 가정). 그러나 XPath에서 * form *을 제거해도 null이 반환됩니다. – StartingGroovy
응답 해 주신 Aaron에게 감사드립니다. 이제 XPath를 다시 확인해 보았습니다. **/html/body // table/tbody/tr/td [2] **에 대한 정확한 정보를 제공하는 것 같습니다. 그 값. 그 부분은 해결되었습니다 (지금 당장). 남은 유일한 문제는 저의 다른 질문입니다. – StartingGroovy
@StartingGroovy - 더 나은 XPath 쿼리로 업데이트하고 포트 번호가 이미지라는 질문에 대한 답변을 추가했습니다. –