Préface:
La première vague d'Internet a disparu maintenant. Avec l'ère à venir de l'Internet des objets basée sur des milliers de données, les données sont devenues l'une des ressources stratégiques importantes des entreprises. Sur la base de la technologie de rampe de données, cet article présente des outils d'exploration liés à Java et joint le code source de démonstration pour les amis intéressés à tester!
1) JDK est livré avec une connexion HTTP pour obtenir Page ou JSON
2) JDK est livré avec sa propre connexion URL pour obtenir la page ou JSON
3) HttpClient Get Tool, Get Page ou JSON
4) outil Commons-io, Get Page ou JSON
5) Outil JSoup (généralement utilisé pour l'analyse de champ HTML), obtenez des pages, des formats de retour sans JSON】
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Code complet:
package com.yeezhao.common.http; import java.io.bufferedeader; import java.io.inputstream; import java.io.inputstreamreader; import java.net.httpurlconnection; import java.net.url; import org.apache.commons.httpcllient.httpcliler; org.apache.commons.httpclient.httpmethod; import org.apache.commons.httpclient.methods.getMethod; import org.apache.commons.io.ioutils; import org.jsoup.jsoup; / ** * http comparison * * @Autor Administrator -> junhong HttpFetchUtil {/ ** * Obtenez le code d'état d'accès * @param request * @return * @throws exception * / public static int getResponSECODE (string request) exception {url url = new URL (request); HttpurlConnection conn = (httpurlconnection) url.openconnection (); return Conn.getResponSECODE (); } / ** * 1) JDK est livré avec une connexion HTTP pour obtenir la page ou JSON * @param request * @param charset * @return * @throws exception * / public static String jdkfetch (string request, String Charset) lève exception {url url = new URL (request); HttpurlConnection conn = (httpurlconnection) url.openconnection (); // Mock the Browser Paramètres Conn.SetRequestProperty ("User-Agent", "Mozilla / 5.0 (Windows NT 6.1; Wow64) Applewebkit / 537.36" + "(Khtml, comme Gecko) Chrome / 45.0.2454.101 Safari / 537.36"); if (conn.getResponSECODE () == httpurlconnection.http_ok) {inputStream input = Conn.getInputStream (); StringBuffer sb = new StringBuffer (); BufferedReader Reader = new BufferedReader (new InputStreamReader (entrée, charse)); String S; while ((s = reader.readline ())! = null) {sb.append (s + "/ n"); } input.close (); Conn.Disconnect (); return sb.toString (); } retour ""; } / ** * 2) JDK est livré avec sa propre connexion URL pour obtenir la page ou JSON * @param request * @param charset * @return * @throws exception * / public static String urlfetch (string request, String chartset) lève exception {url url = new URL (request); return ioutils.tostring (url.openStream ()); } / ** * 3) HttpClient Get Tool, Obtenez la page ou JSON * @Param URL * @param charset * @return * @throws exception * / public static String httpclientFetch (string url, string charset) lance une exception (// get httpclient httpclient = new httpclient (); httpclient.getParams (). SetContentCharset (charset); HttpMethod Method = new GetMethod (URL); httpclient.execureMethod (méthode); return method.getResponseBodyAsstring (); } / ** * 4) outil Commons-io, Get Page ou JSON * @param URL * @param charset * @return * @throws exception * / public static String ComonsioFetch (URL de chaîne, String Charset) lève une exception {return ioutils.tostring (New URL (URL), Stangset); } / ** * 5) Tool JSoup (généralement utilisé pour l'analyse de champ HTML), obtenez des pages, format de retour non json * @param url * @return * @throws exception * / public static string jsoupfetch (string url) lance exception {return jsoup.parse (new url (url), 2 * 1000) .html (); }}Code de test:
Package com.yeezhao.common.http; import org.junit.after; import org.junit.before; import org.junit.test; / ** * Classe de test * 3 liens de test: * 1) Page Web Encyclopedia * 2) Simulation de navigation pour obtenir des données d'interface * 3) Classement normal * @Author Administrateur -> Junhong HttpfetchuilTest {String Seeds [] = {"http://baike.baidu.com/view/1.htm" ,"http://m.ximalaya.com/tracks/26096131.json" ,"http://// remyapi.yeezhao.com/api/Query?wd=%E5%91%A8%E6%98%9F%E9%A9%B0%E7%9A%84%E7%94%B5%E5%BD%B1 "}; Final Static String Default_Charset = "UTF-8"; @Before public void setup () lève une exception {} @after public void Teardown () lève une exception {System.out.println ("--- down ---"); } @Test public void testGetResponSECODE () lève une exception {pour (String Seed: Seeds) {int qui réponde = httpfetchutil.getResponSECODE (seed); System.out.println ("Ret =" + ResponodeCode); }} @Test public void testjdkfetch () lève une exception {pour (String Seed: Seeds) {String ret = httpfetchutil.jdkfetch (seed, default_charset); System.out.println ("ret =" + ret); }} @Test public void TesUrlFetch () lève une exception {pour (String Seed: Seeds) {String ret = httpfetchutil.urlfetch (seed, default_charset); System.out.println ("ret =" + ret); }} @Test public void testHttpClientFetch () lève une exception {pour (String Seed: Seeds) {String Ret = httpFetchUtil.httpClientFetch (seed, default_charset); System.out.println ("ret =" + ret); }} @Test public void testCommonSioFetch () lève une exception {pour (String Seed: Seeds) {String Ret = httpFetchUtil.commonsioFetch (seed, default_charset); System.out.println ("ret =" + ret); }} @Test public void testJSoupFetch () lève une exception {pour (String Seed: Seeds) {String ret = httpfetchutil.jsoupfetch (semence); System.out.println ("ret =" + ret); }}}Attachement: dépendances en pot associées
... <dependency> <proupId> org.jsoup </rompuprid> <letifactive> jsoup </ artifactId> <DERSE> 1.7.3 </ version> </dependency> <dependency> <proupId> Commons-httpclient </proupId> <Artifactid> Command> COMM ONS-HttpClient </ ArfactId> <Dersion> 3.1 </DERNIFRATION> </ Dependency> <Dedency> <ProupId> Commons-io </prôned> <Ertifactid> Commons-io </ artifactid> <version> 2.4 </ version> </ Dependency> ...
Ce qui précède est tout le contenu de cet article. J'espère que cela sera utile à l'apprentissage de tous et j'espère que tout le monde soutiendra davantage Wulin.com.