2015-05-22 6 views
0

Я пишу Java проект, используя HTMLCleaner библиотеку и сохранить результат в виде файла XML, это код, который я написал:Очистка ввода HTML с помощью HTMLcleaner

URL urlSB = new URL("http://www.groupon.com/browse/chicago?z=skip"); 
URLConnection urlConnection = urlSB.openConnection(); 
urlConnection.addRequestProperty("User-Agent", "google.com"); 
urlConnection.connect(); 
HtmlCleaner cleaner = new HtmlCleaner(); 
CleanerProperties props = cleaner.getProperties(); 
props.setNamespacesAware(false); 
TagNode tagNodeRoot = cleaner.clean(urlConnection.getInputStream()); 

// serialize to xml file 
new PrettyXmlSerializer(props).writeToFile(
     tagNodeRoot , "cleaned.xml", "utf-8" 
); 

Проблема заключается в том, что после запуска проекта , cleaned.xml файл пуст.

ответ

0

Проблема в том, что страница, к которой вы пытаетесь получить доступ, настроена на перенаправление на HTTPS. По какой-то причине это не работает, поэтому поток ввода пуст. Если вы измените URL-адрес на HTTPS, он работает нормально:

URL urlSB = new URL("https://www.groupon.com/browse/chicago?z=skip"); 
URLConnection urlConnection = urlSB.openConnection(); 
urlConnection.addRequestProperty("User-Agent", "Mozilla/5.0 (Windows NT 6.3; WOW64; rv:5.0) Gecko/20100101 Firefox/25.0"); 
urlConnection.connect(); 
HtmlCleaner cleaner = new HtmlCleaner(); 
CleanerProperties props = cleaner.getProperties(); 
props.setNamespacesAware(false); 
TagNode tagNodeRoot = cleaner.clean(urlConnection.getInputStream()); 
new PrettyXmlSerializer(props).writeToFile(tagNodeRoot, "cleaned.xml", "utf-8"); 
+0

Благодарим вас за помощь! – Fighter

 Смежные вопросы

  • Нет связанных вопросов^_^