2016-09-02 5 views
1

watir webdrive로 iframe 내부에 텍스트를 복사하여 인쇄하고 싶습니다. iframe이 div 안에 있습니다. iframe과 div에 모두 ID가 있습니다.iframe 내에서 텍스트를 복사하여 인쇄하십시오. wathe webdriver

<div id="sitbReaderKindleSample" style="visibility: visible; width: 497.5px; height: 18138px;"> 
    <iframe id="sitbReaderFrame" scrolling="no" frameborder="0" style="height: 17945px;"> 
</div> 

내 코드

targetURL = "https://www.amazon.in/Secret-Druids-Christopher-C-Doyle- ebook/dp/B01BMD4JF0?ie=UTF8&qid=1472664339&ref_=lp_1318158031_1_2&s=books&sr=1" 

browser.goto targetURL 
browser.image(:id => "ebooksSitbLogoImg").click 
itext = browser.div(:id => 'sitbReaderKindleSample').text 
puts itext 

출력이 샘플 킨들 책의

끝입니다. 미리보기를 즐기셨습니까? 지금 구매

심지어는 :

은 킨들 스토어

에서이 책에 대한 세부 정보를 참조하지만 난이 필요하지 않습니다. 외부 iframe에서 가져온 것입니다. iframe 내부에 텍스트가 필요합니다.

나는 시도

itext = browser.iframe(:id => 'sitbReaderFrame').text 

출력은

내가 rubymine의 IDE

enter image description here

답변

1

당신은 일에 올바른 :

browser.iframe(:id => 'sitbReaderFrame').text 

당신이 빈 String을 받고 있다면, 그건 당신이 Watir과의 이전 버전을 사용하는 의미

Watir과-Webdriver의 v0.9.1에서
  • (및 이전) : iframe.text은 항상 iframe 요소의 텍스트 노드를 반환했습니다.
  • Watir-Webdriver v0.9.2 이상 : iframe.text이 변경되어 iframe 컨텍스트로 전환 한 후 body 텍스트 (원하는 내용)를 반환합니다.

최신 버전을 사용하고 있는지 확인해야합니다.

+0

업데이트 후 및 when_present (90 – Ariful

0

하여 itext = 브라우저를 사용하는 iframe이 내부의 텍스트를 인쇄하는 데 도움이 필요 비어 .iframe (: id => 'sitbReaderFrame'). body.t ext

이것은 나를 위해 작동하며 체인에 시체를 추가합니다.