summaryrefslogtreecommitdiffstats
path: root/Master/Agile Software Development/TestApp/src/Parser/HtmlParser.java
diff options
context:
space:
mode:
Diffstat (limited to 'Master/Agile Software Development/TestApp/src/Parser/HtmlParser.java')
-rw-r--r--Master/Agile Software Development/TestApp/src/Parser/HtmlParser.java56
1 files changed, 56 insertions, 0 deletions
diff --git a/Master/Agile Software Development/TestApp/src/Parser/HtmlParser.java b/Master/Agile Software Development/TestApp/src/Parser/HtmlParser.java
new file mode 100644
index 0000000..96ad2b2
--- /dev/null
+++ b/Master/Agile Software Development/TestApp/src/Parser/HtmlParser.java
@@ -0,0 +1,56 @@
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+package Parser;
+
+import java.util.logging.Level;
+import java.util.logging.Logger;
+import org.htmlparser.util.NodeList;
+import org.htmlparser.util.ParserException;
+import testapp.data.Item;
+import testapp.data.PageItem;
+import java.util.logging.*;
+
+/**
+ *
+ * @author
+ */
+public class HtmlParser //extends NodeVisitor {
+{
+
+ public HtmlParser() {
+ }
+
+ public Item parse(String url) {
+ try {
+ PageItem rootNode = new PageItem(url,null);
+
+ org.htmlparser.Parser parser = new org.htmlparser.Parser(rootNode.getUrl());
+ NodeList nodeList = parser.parse(null);
+
+ nodeList.visitAllNodesWith(new Visitor(rootNode));
+
+ return rootNode;
+
+ } catch (ParserException ex) {
+ Logger.getLogger(HtmlParser.class.getName()).log(Level.SEVERE, null, ex);
+ return null;
+ }
+ }
+
+ public Item parse(Item rootItem) {
+ try {
+ org.htmlparser.Parser parser = new org.htmlparser.Parser(rootItem.getUrl());
+ NodeList nodeList = parser.parse(null);
+
+ nodeList.visitAllNodesWith(new Visitor(rootItem));
+
+ return rootItem;
+
+ } catch (ParserException ex) {
+ Logger.getLogger(HtmlParser.class.getName()).log(Level.SEVERE, null, ex);
+ return null;
+ }
+ }
+}