1

HTML ベースの Web サイトからテキストを抽出する必要があります。約 3000 の URL があり、それらの html から 1 行のテキストを抽出する必要があります。必要なデータは次のようになります。

 <html xmlns:og="http://opengraphprotocol.org/schema/">
<head>
<title>Pink Floyd Live Audio Feeds</title>// the line i need
...

このプロセスを自動化するにはどうすればよいですか? 私は Java が得意なので、その言語を使用した方法論が好まれます。ありがとう!

4

3 に答える 3

4

実世界のHTMLを操作するための優れたJavaライブラリであるjsoupを使用できます。

于 2013-03-16T14:02:57.820 に答える
3

HTMLテキストを1行ずつ読むことができ、見つけたら</title>残りのページを読むのをやめます。これを行う方法は次のとおりです(コメントで指摘したのと同じHTMLコード行に<title>とがあると思います)</title>

public static String getTitle(String address) throws IOException {
    URL url = new URL(address);
    BufferedReader reader = null;
    try {
        reader = new BufferedReader(new InputStreamReader(url.openStream()));

        String line = null;
        while ((line = reader.readLine()) != null) {
            int start = line.indexOf("<title>");
            int end = line.indexOf("</title>");

            if (start != -1) {
                return line.substring(start + "<title>".length(), end);
            }
        }

        return "";
    } finally {
        if (reader != null)
            reader.close();
    }
}
于 2013-03-16T15:10:30.717 に答える
0

URLのリストを繰り返し処理し、を使用HttpURLConnectionしてページをダウンロードします。すべてのページでデータを処理したら、必要な情報を抽出します。これがHttpURLConnectionjavadocページです

于 2013-03-16T14:03:34.597 に答える