Java - 彩票统计解析器

标签 java javascript html-parsing

我正在尝试从网页解析一些 int ,但遇到了一些问题:

1 该网页是使用 JavaScript 生成的。

此示例代码(Credz 到 Oracle.com。StackOverflow 不允许我链接)在执行 JavaScript 之前打印出 html 代码。

import java.net.*;
import java.io.*;

public class URLConnectionReader {
    public static void main(String[] args) throws Exception {
        URL oracle = new URL("http://www.oracle.com/");
        URLConnection yc = oracle.openConnection();
        BufferedReader in = new BufferedReader(new InputStreamReader(
                                    yc.getInputStream()));
        String inputLine;
        while ((inputLine = in.readLine()) != null) 
            System.out.println(inputLine);
        in.close();
    }
}

问:如何获取生成的html?

2 直接转到链接时,网页未正确呈现: This direct link将呈现为一个空的“壳”。 前往this link并单击Vis utskriftsside(向左下方)将打开一个新的正确渲染的窗口。

问:这两个链接有什么区别?如何使用直接链接访问正确呈现的网页?

编辑

这是生成我要抓取的数字的 HTML/JavaScript:

 <div id="drawNumbers" class="drawn-numbers">
 <script type="text/javascript">
    var tableData ='';
    if (opener.draw_numbers) {
        for(var i = 0; i<opener.draw_numbers.length;i++){
            tableData += '<div class="number" style="left:'+(i*28+8)+'px;">';
            tableData += '<img width="23" height="23" alt="" src="/nt-keno/result/images/res_keno_tallramme_print.gif">';
            tableData += '</div>';
            tableData +=  '<div class="number" style="left:'+(i*28+9)+'px; top:9px; z-index: 30;">' +opener.draw_numbers[i]+ '</div>';
        }
    }
    document.writeln(tableData);
</script>
</div>

我可以将这个数组导入到java中吗?

opener.draw_numbers[i]

最佳答案

您正在做的事情被称为“抓取”,动态页面经常会导致问题:

How do you scrape AJAX pages?

Scraping dynamically generated html inside Android app

Best web scraping Ruby on Rails library that handles dynamic HTML produced by javascript

没有简单的解决方案。

关于Java - 彩票统计解析器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12377316/

相关文章:

python - 抓取具有多个链接的页面上的特定链接?

java - 尝试保留主键具有唯一约束的实体时出错

java - 无法序列化 Hashmap,java.io.NotSerializedException

javascript - 如何使客户端图像调整大小功能可重用

javascript - 如何使用 Backbone.Marionette 构建一个用于将项目创建到列表中的应用程序?

html - CSS 选择器只选择第一行

java - 超出范围的字符串索引和使用输入数据的总计

java - 通过正则表达式从行中获取彼此相邻的 3 个字符串

Javascript 作用域问题

python - 漂亮的汤无法解析这个 HTML