Java で Web クローラーを作成しようとしていますが、これまでのところ、JavaScript または PHP を使用してコンテンツを動的に取得する Web サイトに問題がありますが、これはほとんど機能します。たとえば、ソース コード全体を取得するのではなく、tumblr ブログをクロールしようとすると、リンクとすべてでは、CSS とヘッダー情報のみを取得します。これは、すべての投稿情報が JavaScript によって収集されるためです。
Web ページからソース コードを取得するために使用しているコードは ...
public static String openURL( String url )
{
String source = null;
String temp = "";
BufferedInputStream bis;
try
{
URL my_url = new URL(url);
HttpURLConnection urlConnection = (HttpURLConnection) my_url.openConnection();
urlConnection.setRequestProperty("User-Agent", "Mozilla/5.0");
InputStream is = urlConnection.getInputStream();
bis = new BufferedInputStream(is);
byte[] buffer = new byte[1024];
int bytesread = 0;
source = "";
bytesread = bis.read(buffer);
while( bytesread != -1 )
{
source += new String(buffer, 0, bytesread);
bytesread = bis.read(buffer);
}
}
catch (Exception ex ){}
System.out.println(source);
return source;
}
これを変更して動的コンテンツを取得する方法を教えてください。どんな助けでも大歓迎です
乾杯ダニエル
編集:あなたの答えは役に立ちますが、申し訳ありませんが、このプロジェクトはより教育的であるため、サードパーティのAPIを使用せずにそれを行う方法を見つけようとしていました