java - 如何使用 jsoup 解析没有 Id 标记的表。

标签 java arrays jsoup

如何解析没有 Id 标记的表。 我正在尝试解析源代码行 2290 到 3153 http://pastebin.com/DjGHED5t 的表

对于我来说如何做到这一点并不明显。我现在拥有的是

import java.util.*;
import java.io.*;
import java.awt.*;
import javax.swing.*;
import org.jsoup.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;

public class test{
public static void main (String []args){
    String Ticker = "KO";
    URL url = new URL("http://toolbox.investools.com/graphs/fundamentalAnalysis.iedu?report=BS&symbol="+(Ticker));
    Document doc = Jsoup.parse(url, 3000);
    Elements table = doc.select(table);
    Iterator<Element> ite = table.select(table[width="100%"] [bgcolor="#CCCCCC"] [cellpadding="0"] [cellspacing="2"]);

        String[][] balanceSheetInfo = new String [46][11];

        while (ite.hasNext()){
            for (int row = 0, row_size = balanceSheetInfo[row].length; row < row_size; row++){
                    for (int col = 0, col_size = balanceSheetInfo.length; col < col_size; col++){
                        if(ite.hasNext()){
                        balanceSheetInfo[col][row] = input.next();
                        System.out.printf("%s",balanceSheetInfo[col][row]);                         }
                    }
                }                   
            }
        }
    }

但我收到符号未找到错误。我对 Jsoup 和 scraping 并不擅长,因为这是我使用它的第一个项目。如果有人可以指导我,我将不胜感激。

最佳答案

阅读您的代码:

Elements table = doc.select(table);

您在声明表变量之前就使用了它(在 doc.select(table) 中)。 Element.select() method接受一个字符串作为参数。你需要

Elements table = doc.select("table");

带双引号,这将选择所有表格元素。

下一行有同样的问题:

table.select(table[width="100%"] [bgcolor="#CCCCCC"] [cellpadding="0"] [cellspacing="2"]);

应该是

table.select("table[width=\"100%\"] [bgcolor=\"#CCCCCC\"] [cellpadding=\"0\"] [cellspacing=\"2\"]");

关于java - 如何使用 jsoup 解析没有 Id 标记的表。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10972118/

相关文章:

java - jsoup 1.8.2 + android,NoClassDefFoundError : Failed resolution of: Ljava/applet/Applet;

java - 使用 JSoup 获取所有页面的结果

java - 我的变量没有正确初始化

java - 如何告诉 Android studio 某个方法没有返回

java - 使用 MVP 模式和 OO 原则

javascript - 带有 Lodash 的 TypeScript : _. map( ["123", "234 "], _.trim) 返回 boolean[]?

java - openjdk 中的 networkaddress.cache.ttl null

java - 为什么在二分查找中返回低位而不是高位?

c - 将内存区域视为结构数组时的对齐注意事项

java - Android调试器和JSOUP : Source not found