0

最近、JavaでHTMLソースの情報を取得したいです。基本的なニーズは、HTMLのメインコンテンツ領域を取得することです。たとえば、次はHTMLソースです。

<html> 
  <head>
  <tilte>
     chinese charactor --中文
   <title>
  </head> 

      <body>
        <div>
        this is something area including Chinese charactor.,like meun I don't need,
        </div>
        <div>
   this is something area including Chinese charactor,like ads I don't need, 
        </div>
        <div>  
 this is  main content, include the content I need. almost every content is filled by         many  Chinese charactor.Like: 好好学习,天天向上。 我爱stackoverflow.谢谢你的帮助,非常感谢!
        </div>
        <div>  
 this is foot area, also including Chinese charactor ,but I don't need.
         </div>
        </body>
   </html>

このHTMLソースは単純なものです。多くの異なった複雑な情報源があります。メインコンテンツを含むdivまたはその他の要素領域をjavaで解析したいと思います。私が欲しい結果は次のとおりです。

<div>  
   This is main content, include the content I need. almost every content is filled by         many Chinese character like: 好好学习,天天向上。 我爱stackoverflow.谢谢你的帮助,非常感谢!
   </div>

内容が異なる何万ものdivがあり、dividは不明または異なります。divには、pタグなど、さまざまな条件があります。漢字の見た目や分布を判断して内容を解析する方法はありますか?

4

2 に答える 2

0

私はあなたが何をしようとしているのかはっきりとは言えませんが、始めるのに良い場所の1つはおそらくApacheのHTTPComponentsパッケージでしょう。httpリクエストを作成し、データを文字列バッファに戻すためのツールはたくさんあります(私はあなたが何をしようとしていると思いますか)

ここでそれをチェックしてください:

http://hc.apache.org/httpcomponents-client-ga/tutorial/html/fundamentals.html#d5e43

また、HTTPComponentsのメインページには、ほとんどのチュートリアルの中国語訳があります。それがあなたにとって役立つものであるかどうかはご存知でしょう:D

http://hc.apache.org/

于 2012-10-31T02:23:37.483 に答える
0

質問を理解しているとは言えませんが、Java 経由で HTML ページの特定の div をスクレイピングしたいようです。

新しいシステムをテストするためにレガシーシステムからデータをスクレイピングするためにこれを行う必要がありました - http://htmlunit.sourceforge.net/を見てください。基本的には、ブラウザであるかのように目的のページにアクセスできます (そのため、通常はそのページにアクセスするためにフォームに入力する必要がある場合でも、それを行うことができます)。たとえば、すべての div のコレクションを取得して 3 番目の div を選択するか、適切な CSS クラスを含む div を選択するか、XPath を使用するだけです。

于 2012-10-31T02:13:23.590 に答える