相关疑难解决方法(0)

使用JAVA解析网站HTML

我想解析一个简单的网站,并从该网站上抓取信息.

我曾经用DocumentBuilderFactory解析XML文件,我试图对html文件做同样的事情,但它总是陷入无限循环.

    URL url = new URL("http://www.deneme.com");
    URLConnection uc = url.openConnection();

    InputStreamReader input = new InputStreamReader(uc.getInputStream());
    BufferedReader in = new BufferedReader(input);
    String inputLine;

     FileWriter outFile = new FileWriter("orhancan");
     PrintWriter out = new PrintWriter(outFile);

    while ((inputLine = in.readLine()) != null) {
        out.println(inputLine);
    }

    in.close();
    out.close();

    File fXmlFile = new File("orhancan");
    DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
    DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
    Document doc = dBuilder.parse(fXmlFile);


    NodeList prelist = doc.getElementsByTagName("body");
    System.out.println(prelist.getLength());
Run Code Online (Sandbox Code Playgroud)

什么是问题?或者有没有更简单的方法从网站上抓取给定html标签的数据?

html java scrape

46
推荐指数
3
解决办法
9万
查看次数

用于Java的HTML/XML Parser

哪些HTML解析器具有以下功能:

  • 快速
  • 线程安全
  • 可靠且无错误
  • 解析HTML和XML
  • 处理错误的HTML
  • 有一个DOM实现
  • 支持HTML4,JavaScript和CSS标记
  • 相对简单,面向对象的API

你认为哪种解析器更好?

谢谢.

html java xml parsing dom

32
推荐指数
4
解决办法
2万
查看次数

用于清理HTML的Java库就像浏览器一样

所以这就是挑战......我需要在野外随机网页中创建干净的HTML.我的目标是在一个页面中读取并将其传递给一个库,这将反过来给我一个完美的HTML格式.

听起来不那么厉害吧?毕竟,市场上的每个浏览器都能有效地应对格式错误的HTML的挑战,并将其转化为几乎每个页面加载都可渲染的东西.每个都有自己的略微特定的清理内容的算法(对于HTML <5来说是这样),但是他们倾向于非常好地捕捉我想要作为作者意图的内容.那么,为什么我不能为这项任务找到一个好的java库呢?

有一点需要提及的是,我对将HTML解析为XML并不感兴趣.我发现像NekoHTML,TagSoup,HtmlCleaner和JTidy这样的库(仅举几例)更侧重于解决将HTML转换为有效XML的问题,并且在此过程中,他们忽略了如何糟糕 - 格式化文档应重新构建.使用令人讨厌的HTML,他们经常不会捕获作者的意图并吐出与原始源完全不同的文档.对于这个项目,两个文件的呈现方式同样至关重要.

我非常喜欢Jericho HTML,但它似乎并不是这项工作的理想人选...至少在没有我付出很多努力的情况下.此外,Native依赖项是不行的,因此mozilla解析器已经完成.

任何人都可以帮助我寻找完美的HTML解析器吗?提前致谢!

html java html-parsing

14
推荐指数
1
解决办法
6328
查看次数

是否有类似于Java的lxml或nokogiri的库?

我想做一些屏幕抓取,理想情况下使用CSS选择器而不是XPath.是否有类似于Ruby或Python中的库?

java screen-scraping

9
推荐指数
1
解决办法
4058
查看次数

如何使用jsoup来整理html

我正在使用jsoup,整理一些html非常好,但我有一个无效的html如下:

<p>The recurrence, in close succession <ul><li>list item 1</li><li>list item 2</li></ul> second part of thisssss
Run Code Online (Sandbox Code Playgroud)

我想得到的是:

<p>The recurrence, in close succession </p><ul><li>list item 1</li><li>list item 2</li></ul> <p>second part of thisssss</p>
Run Code Online (Sandbox Code Playgroud)

那么jsoup能够整理html并返回这个输出吗?

谢谢

jsoup

8
推荐指数
1
解决办法
4083
查看次数

如何在java中提取网页文本内容?

我正在寻找一种方法,使用jdk或其他库从网页(最初是html)中提取文本.请帮忙

谢谢

java

6
推荐指数
2
解决办法
2万
查看次数

在Java中查找href链接和URL的内容

我想解析这个链接:

<a href="http://www.google.fr">Link to google</a>
Run Code Online (Sandbox Code Playgroud)

为了获得两个结果:

Link = "http://www.google.fr"
LinkName = "Link to google"
Run Code Online (Sandbox Code Playgroud)

我真的不知道怎么做,Java中是否有一个库可以解决这个问题?

提前致谢,

java href

6
推荐指数
1
解决办法
2万
查看次数

4
推荐指数
1
解决办法
8136
查看次数

使用java的Html解析器

可能重复:
是否有用Java实现的验证HTML解析器?

嗨,

是否有任何API使用java解析HTML文本.

所有功能都应采用Objects的格式

例如,在下面的文本中我想解析HTML文件,解析器应该返回标签列表,属性..

<HTML>
<BODY>
    <INPUT TYPE="text" value="100">
</BODY>
</HTML>
Run Code Online (Sandbox Code Playgroud)

谢谢

java

1
推荐指数
1
解决办法
694
查看次数

使用JAVA从HTML标记中撕下subString

假设我有一个像这样的字符串" neverMind<b>What is up</b>neverMind",我想用JAVA取出使用正则表达式的内容.有人告诉我,使用匹配器将是最好的.谁能告诉我如何使用Matcher做到这一点?
其他解决方案也欢迎!谢谢!

html java tags string

1
推荐指数
1
解决办法
1528
查看次数

Python的re.sub() - > Java

什么是Java相当于:

def filt_out(s):
        return re.sub('<a href="(.*)">', '', s.replace('<br/>', '\n').replace('&quot;', '\"').replace('</a>', ''))
Run Code Online (Sandbox Code Playgroud)

python java

0
推荐指数
1
解决办法
1095
查看次数

标签 统计

java ×9

html ×4

android ×1

dom ×1

href ×1

html-parsing ×1

jsoup ×1

parsing ×1

python ×1

scrape ×1

screen-scraping ×1

string ×1

tags ×1

xml ×1