私は自動化と解析のためにjavaでselenium webdriver + jsoupを使用しています。手動でウェブサイトを開き、iframeを新しいタブで開くことができます。私はこれを自動的にやりたいセレン+ jsoupで新しいタブでフレームをプログラムで開く
広告を含むウェブサイトでiframeを検査しました。これらのiFrameのsrc属性は空または空白です。それらには、src属性がiframeのソースに設定されているiframeが含まれています。コードでこのURLを取得するにはどうすればよいですか?
私は「新しいタブで開いているフレームを」クリックすると、Firefoxが、私を参照することになり、これらの情報源、それらのiframeのソース属性を、リンクを開くすべてのiframeを取得し、出力したい
WebDriver driver = new FirefoxDriver();
driver.manage().timeouts().pageLoadTimeout(200, TimeUnit.SECONDS);
String baseUrl = "https://www.iplocation.net/";
driver.get(baseUrl);
String source = driver.getPageSource();
List<Element> iframes = doc.getElementsByTag("iframe");
System.out.println("Number of iframes = "+ iframes.size());
System.out.println("URL of 1st iframe: " + iframes.get(0).attr("src”)); // empty
ソースを取得するためにネストされたiframeに移動する必要があることがわかります。しかし、私が望んでいたのは、これを得るためのより良い方法か、これを再帰的に行うためのアルゴリズムでした。 – user3834119