0
다음에서 나는 xml:lang="en"
속성이 들어있는 노드에서 텍스트를 가져오고 싶습니다. Nokogiri와 XPath를 사용하여 여러 개의 네임 스페이스로 된 속성을 가진 노드를 얻으십시오.
<li><span class="literal"><span property="dbpedia-owl:abstract" xmlns:dbpedia-owl="http://dbpedia.org/ontology/" xml:lang="en">text</span></span></li>
현재 내가 사용
: 내 XPath를 배열 또는 잘못된 네임 스페이스 선언하지만, 내가 바로 뭔가를하고 있지 않다 어느 쪽의 경우ns = {"xmlns" => "http://www.w3.org/1999/xhtml"}
ns = {"xml" => "http://www.w3.org/XML/1998/namespace"}`
array << doc.xpath("//span[@property='dbpedia-owl:abstract' and xmlns:dbpedia-owl='http://dbpedia.org/ontology/' and @xml:lang='en']").text`
는 잘 모르겠어요.
질문이 이전에 요청되었지만 네임 스페이스와 여러 속성을 조합하여 찾을 수 없으므로 죄송합니다. 따라서 내가 발견 한 솔루션을 부적절하게 분리 된 문제와 결합했을 수 있습니다. 값이 URL 인 xmlsn:dbpedia-owl
값과 관련된 문제 일 수도 있지만 확실하지는 않습니다.
답장을 보내 주셔서 감사합니다. 그것도 잘 작동합니다. 첫 번째 스팬을 잡았습니다. 원본 스크립트와 똑같은 것이었고, 특별히 영어 텍스트가 필요했습니다. 하나의 예제 URL은 http://dbpedia.org/page/Astro_Boy입니다. 원본에서 첫 번째 span.literal은 아랍어 (xml : lang = "ar")로되어 있으며 이는 내 제안이 무엇인지를 보여줍니다. – tsukugiri
그리고 질문에 나열된 요구 사항은 어디에 있습니까? 너는 "나는 텍스트를 움켜 잡고 싶다"고 말했다. –