Dieser Artikel untersucht hauptsächlich das Problem des Java -Network Crawler Connection Timeouts wie folgt.
Bei Netzwerkcrawlern werden häufig die folgenden Fehler auftreten. Das heißt, die Verbindung wurde zeitlich abgestimmt. Für dieses Problem lautet die allgemeine Lösung: Stellen Sie die Verbindungszeit und die Anfrage für einen längeren Zeitraum fest. Wenn die Verbindungszeitüberschreitung auftritt, werden Sie die Anzahl der Wiederherstellungen erneut erfüllen.
Ausnahme im Thread "Haupt" java.net.connectException: Verbindungszeitpunkt: Connect
Der folgende Code ist ein Beispielprogramm, das HTTPClient zum Lösen des Verbindungszeitüberschreiters verwendet. Gehen Sie direkt zum Programm.
Paket daili; import java.io.ioxception; import Java.net.uri; import org.apache.http.httprequest; import org.apache.http.httpespesponse; import org.apache.http.client.clientProtocolexception; org.apache.http.client.params.cookiepolicy; import org.apache.http.client.protocol.clientcontext; import org.apache.http.impl.client.basiccookiestore; org.apache.http.impl.client.defaulthttpclient; import org. org.apache.http.protocol.baschttpcontext; import org.apache.http.protocol.executioncontext; import org.apache.http.protocol.httpcontext; import org. Technologie*[email protected]*/public Class Test1 {public static void main (String [] args) löst ClientProtocolException, IOException, InterruptedException aus ner httpclient = new Defaulthttpclient (); httpclient.getParams (). setParameter ("http.protocol.cookie-policy", Cookiepolicy.browser_Compatibilität); // Set Parameter httpparams params = httpclient.getPclient.GetPclient.GetPcLISt. HttpConnectionParams.setConnectionTimeout (Params, 6000); BasesichttpContext (); BasicClientCookie2 ("Content-Typ", "Text/html; charset = utf-8"); BasicClientCookie2 Cookie1 = neuer BasicClientcookie2 ("User-Agent", "Mozilla/5.0) (Windows NT 10.0; WOW64) Applewebkit/537.36 (KHTML, KHTML, KHTML, KHN. Safari/537.36 "); Cookiestore.Addcookie (Cookie); Cookiestore.Addcookie (Cookie1); localContext.SetAttribute (ClientContext.cookie_store, cookiestore); RAWHTML = ""; Antwort = httpclient.execute (request, localContext); int statusCode = response.getStatusline (). getStatusCode (); // das Antwortstatus -Code system.out.println (StatusCode) abrufen; if (statusCode == 200) {// StatusCode 200 gibt an, dass die Antwort erfolgreich ist // den Entitätsinhalt rawhtml = entityutils.toString (response.getEntity ()); System.out.println (rawhtml); // Ausgabe der Entität inhalts Entityutils.consum (response.getEntity ()); // Konsumentität} else {// Schließen Sie die Streaming -Entität von HttpentityEntityUtils.consum (reaktions. 30-minütige Break} httpclient.close (); System.out.println (rawHtml); return rawhtml;}}
Ergebnis:
Zusammenfassen
Das obige ist der gesamte Inhalt dieses Artikels über den Timeout -Lösungscode von Java Web Crawler Connection. Ich hoffe, er wird für alle hilfreich sein. Interessierte Freunde können weiterhin auf andere verwandte Themen auf dieser Website verweisen. Wenn es Mängel gibt, hinterlassen Sie bitte eine Nachricht, um darauf hinzuweisen. Vielen Dank an Freunde für Ihre Unterstützung für diese Seite!