Tag: html解析

在使用HtlmCleaner的Android上,非英语字符解码不正确

我正在使用HtmlCleaner在Android中搜索ISO-8859-1编码的网站。 我在外部jar文件中实现了这个,我将其导入到我的Android应用程序中。 当我在Eclipse中运行unit testing时,它处理挪威字母( æ,ø,å )正确(我可以在调试器中validation),但在Android应用程序中,这些字符看起来像倒置问号。 如果我将调试器附加到我的Android应用程序,我可以看到这些字母在从Eclipse运行unit testing时在完全相同的位置不正确,因此它不是Android应用程序中的显示/渲染/视图问题。 当我从调试器中复制文本时,我得到以下结果: Java Process(unit testing) :«Blårek»,«Benny» Android进程(在模拟器中) :«Bl rek»,«Benny» 我希望这些字符串是相同的,但请注意Android中的反转问号如何重放“å”。 我试过运行htmlCleaner.getProperties().setRecognizeUnicodeChars(true)没有任何运气。 另外,我发现无法在html清理器中强制使用UTF-8或ISO-8859-1编码,但我不确定这是否会产生影响。 这是我运行的代码: HtmlCleaner htmlCleaner = new HtmlCleaner(); // connect to url and get root TagNode from HtmlCleaner InputSteram is = new URL( url ).openConnection().getInputStream(); TagNode rootNode = htmlCleaner.clean( is ); // navigate through some TagNodes, getting the […]

如何解析HTML并获得CSS样式

我需要解析HTML并找到相应的CSS样式。 我可以分别解析HTML和CSS,但我无法将它们组合起来。 例如,我有一个像这样的XHTML页面: Hello World 我必须搜索“hello world”并找到它的类名,然后我需要从外部CSS文件中找到它的样式。 使用Java,JavaScript和PHP的答案都可以。

如何从Java中的HTML文件中获取值?

我需要从HTML文件中获取一个值(下面的示例中为“abc”),如下所示: 正如我从其他post中发现的那样,我应该使用其中一个HTML解析器(而不是正则表达式)。 你能告诉我使用哪一个或显示代码示例。 谢谢。

使用jsoup进行奇怪的编码行为

我用jsoup从不同页面的html源代码中提取一些信息。 其中大多数是UTF-8编码的。 其中一个是用ISO-8859-1编码的,这导致了一个奇怪的错误(在我的选择中)。 包含错误的页面是: http : //www.gudi.ch/armbanduhr-metall-wasserdicht-1280×960-megapixels-p-560.html 我用以下代码读取了所需的String: Document doc = Jsoup.connect(“http://www.gudi.ch/armbanduhr-metall-wasserdicht-1280×960-megapixels-p-560.html”).userAgent(“Mozilla”).get(); String title = doc.getElementsByClass(“products_name”).first().text(); 问题是字符串“HD Armbanduhr aus Metall 4GB Wasserdicht 1280X960 – 5百万像素”中的连字符。 像öäü这样的正常变音符号被正确读取。 只有这个单一字符,没有输出为“-” 出现问题。 我试图用out.outputSettings()。charset(“ISO-8859-1”)覆盖(正确设置)页面编码,但这也没有帮助。 接下来,我尝试使用Charset类更改字符串的编码,并手动更改为utf8和iso-8859-1。 也没有运气。 在使用jsoup解析html文档之后,有人提示我可以尝试获取正确的字符吗? 谢谢