私はかなり紛らわしい問題を抱えています。私は文字通り、ネットワーキングを 1 日しか行っていません。私の問題は、クロムにコピーアンドペーストしてアクセスできるプログラム的な方法で URL にアクセスできないことです。
私は jsoup ( http://jsoup.org/apidocs/ ) と呼ばれるライブラリを使用しています。これは、Web サイトの生の html からテキストを解析します。私の一般的な目標は、文字列を添付できるベース URL を使用して、そこから Web ページを取得することです。私はコードを使用しています(より多くのコードを要求した人のために編集してください。これはまだまばらであることは知っていますが、これはエラーの前の唯一のコードです)
String url = "https://www.google.com/search?q=definition+of+";
url += search; //search is the passed in string
Document doc = Jsoup.connect(url).get(); //url is the String in question
ウェブページを取得します。私の最終的な目標は、このメソッドを使用して、単語の定義を検索するときにクロム検索の上部にあるボックスのテキストを取得することです。つまり、ここの上部にあるボックス: https://www.google.com/search?q=definition+of+apple
ただし、上記のリンクを URL として使用しようとすると問題が発生します。org.jsoup.HttpStatusException が発生するため、ネットワークの問題だと思います。クロムに入力するとこの URL が機能するのに、Java では機能しない原因は何ですか? (現在の方法は少し回りくどい感じがするので、そのボックス内の情報を取得するさまざまな方法に反対することもありません)
完全なエラー メッセージ (編集済み)
Exception in thread "main" org.jsoup.HttpStatusException: HTTP error fetching URL. Status=403, URL=https://www.google.com/search?q=definition+of+apple
at org.jsoup.helper.HttpConnection$Response.execute(HttpConnection.java:435)
at org.jsoup.helper.HttpConnection$Response.execute(HttpConnection.java:410)
at org.jsoup.helper.HttpConnection.execute(HttpConnection.java:164)
at org.jsoup.helper.HttpConnection.get(HttpConnection.java:153)
at test.Test.parseDef(Test.java:68)
at test.Test.main(Test.java:112)
誰が答えても、ネットワーキングの初心者を助けるために時間を費やしてくれてありがとう!