में AJAX अनुरोध को संसाधित करें मेरे पास एक बटन क्लिक होने के बाद वेबपृष्ठ से स्रोत कोड को स्क्रैप करने के लिए लिखा गया एक प्रोग्राम है। मैं सही पेज को स्क्रैप करने में असमर्थ हूं क्योंकि मुझे लगता है कि एक AJAX अनुरोध भेजा जा रहा है, और मैं इस प्रतिक्रिया के लिए इंतजार नहीं कर रहा हूं। मेरे कोड वर्तमान में है:Htmlunit
public class Htmlunitscraper {
private static String s = "http://cpdocket.cp.cuyahogacounty.us/SheriffSearch/results.aspx?q=searchType%3dSaleDate%26searchString%3d10%2f21%2f2013%26foreclosureType%3d%27NONT%27%2c+%27PAR%27%2c+%27COMM%27%2c+%27TXLN%27";
public static String scrapeWebsite() throws IOException {
java.util.logging.Logger.getLogger("com.gargoylesoftware").setLevel(Level.OFF);
System.setProperty("org.apache.commons.logging.Log", "org.apache.commons.logging.impl.NoOpLog");
final WebClient webClient = new WebClient();
final HtmlPage page = webClient.getPage(s);
final HtmlForm form = page.getForms().get(2);
final HtmlSubmitInput button = form.getInputByValue(">");
final HtmlPage page2 = button.click();
String originalHtml = page2.refresh().getWebResponse().getContentAsString();
return originalHtml;
}
}
इस link की चर्चा करते हुए के बाद, मैं इसे ठीक करने की मैं विधि "webClient.waitForBackgroundJavaScript (10000)" को लागू कर सकता है विश्वास करते हैं। एकमात्र मुद्दा यह है कि मुझे यह नहीं समझना है कि यह कैसे करना है क्योंकि हर बार जब मैं बटन पर क्लिक करता हूं तो मैं एक HTML क्लास ऑब्जेक्ट बनाता हूं, न कि WebClient ऑब्जेक्ट। समस्या को ठीक करने के लिए मैं इस विधि को कैसे शामिल कर सकता हूं?