0

Java/htmlunit を使用して、ヘッジファンドの SEC 13F ファイリングの束をデータマイニング (Web スクレイピング) したいと考えています。This Tableなどの SEC の .txt ファイルをデータマイニングする方法がわかりません。< Table >テーブルのレイアウトはきれいで構造化されているように見えますが、対応する< S >andを使用して取得するにはどうすればよい< C >ですか? さらに、会社名と< C >値 (3 列目) と< C >株式数 (4 列目) だけを取得するにはどうすればよいでしょうか。

私が正しい軌道に乗っているかどうかはわかりませんが、Bufferedreader を使用しました。次に何をすればよいかわかりません< Table >。これまでのところ、次のようなものがあります。

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.MalformedURLException;
import java.net.URL;

public class BufferedReaderExample {

public static void main(String[] args) {

    try {
        // Create a URL for the desired page
        URL url = new URL("http://www.sec.gov/Archives/edgar/data/1047644/000104746912006072/a2209520z13f-hr.txt");
        BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream()));
        String str;


        while ((str = in.readLine()) != null) {
            System.out.println(str);
        }
        in.close();
    } catch (MalformedURLException e) {
    } catch (IOException e) {
    }
}
}
4

1 に答える 1

0

このドキュメントの形式はわかりませんが、HTMLUnitを使用すると、せいぜいWebからダウンロードできます。自分で解析を行う必要があります。

さて、フォーマットはXML、HTML、または標準フォーマットではないようです(少なくとも私が知っている少量から)...それで、私は最初に正規表現について考えましたが、もう一度考えた後、あなたが持っていることに気づきましたダッシュの量で表される列の長さ(-)

正規表現を使用して<table>タグ間のすべてを取得し、任意のプログラミング言語を使用して破線を文字列の配列に分割し、下の各行のテキストをそれらの各文字列の文字数だけ切り取ることができます。

それだろう:)

于 2012-06-07T04:58:05.927 に答える