我是Java / Android的新手,所以请耐心等待。提前谢谢您的时间。我正在编写一个简单的Android应用程序,它将扫描网页的源代码以获取= href链接并返回它们
我已经用Google搜索了大约2天,找不到任何确定的答案,因此我向SO提出了问题。 目前我正在使用以下导入,这些导入是在使用Ctrl-Shift-O
时由eclipse生成的import javax.swing.text.EditorKit;
import javax.swing.text.SimpleAttributeSet;
import javax.swing.text.html.HTML;
import javax.swing.text.html.HTMLEditorKit;
问题是,当我运行我的Android应用程序时,它会崩溃使用这些库的代码(下面的代码)。
我需要在不使用javax.swing导入的情况下找到一种方法。我已经设法弄清楚android.text.html有一些功能,但不是我需要的。
我是否可以使用任何Android导入来执行以下操作,或者有没有办法让javax.swing.text。*导入与android一起工作?
代码在这里:
try {
URLConnection conn = params[0].openConnection();
Log.i(DEBUG_TAG, "Code fails here for the new declarations");
BufferedReader rd = new BufferedReader( new InputStreamReader(conn.getInputStream()));
EditorKit kit = new HTMLEditorKit();
HTMLDocument doc = (HTMLDocument) kit.createDefaultDocument();
kit.read(rd, doc, 0);
HTMLDocument.Iterator it = doc.getIterator(HTML.Tag.A);
while (it.isValid()) {
SimpleAttributeSet s = (SimpleAttributeSet) it.getAttributes();
String link = (String) s.getAttribute(HTML.Attribute.HREF);
if (link != null) {
if (link.contains("naruto") && !link.contains("http://mangastream.com")){
// find the chapter number / id and print to console
String chapterNumber = link.replace("http://readms.com/r/naruto/", "");
// System.out.println("Chapter = " + chapterNumber.substring(0,3));
// System.out.println("ChapterID = " + chapterNumber.substring(4,8));
if (!registeredChapters.containsKey(chapterNumber.substring(0,3))){
registeredChapters.put(chapterNumber.substring(0,3),chapterNumber.substring(4,8));
}
}
}
it.next();
}
//appendToFile("Done with URL processing");
Log.i(DEBUG_TAG, "Current chapters / id's found: ");
}
catch (IOException ioe){
ioe.printStackTrace();
}
catch (Exception e){
Log.i(DEBUG_TAG, e.getLocalizedMessage());
}
catch (Throwable t){
Log.i(DEBUG_TAG,t.getClass().getName());
}
答案 0 :(得分:-1)
我正在编写一个简单的Android应用程序,它将扫描网页的源代码以获取= href链接并返回它们
使用HTML解析器解析HTML。
目前我正在使用以下导入
其中没有一个是通用HTML解析器。使用HTML解析器来解析HTML。
在主要搜索引擎上搜索java html parser
后会出现:
此搜索还会在StackOverflow上显示Java HTML Parsing和Which HTML Parser is the best?以及许多其他资源。