Предисловие:
Первая волна Интернета исчезла. С предстоящей эрой Интернета вещей, основанной на тысячах данных, данные стали одним из важных стратегических ресурсов предприятий. На основе технологии ползания данных в этой статье представлены инструменты ползания, связанные с Java и прикрепляют демо-исходный код для заинтересованных друзей для тестирования!
1) JDK поставляется с HTTP -соединением, чтобы получить страницу или JSON
2) JDK поставляется с собственным URL -соединением, чтобы получить страницу или JSON
3) httpclient получить инструмент, получить страницу или JSON
4) Инструмент Commons-IO, Get Page или JSON
5) Инструмент JSoup (обычно используется для анализа поля HTML), получить страницы, форматы возврата без json】
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------. ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------.
Полный код:
пакет com.yeezhao.common.http; импорт java.io.bufferedreader; импорт java.io.inputstream; import java.io.inputStreamReader; импорт java.net.httpurlConnection; importtpclient. org.apache.commons.httpclient.httpmethod; import org.apache.commons.httpclient.methods.getmethod; импорт org.apache.commons.io.ioutils; импорт org.jsoup.jsoup;/** * * Httpfetchutil { / ** * GET Code Access Code * @param запрос * @return * @throhs Exception * / public int int getResponsecode (string request) throws exception {url url = new URL (запрос); Httpurlconnection conn = (httpurlconnection) url.openconcenection (); вернуть conn.getResponsecode (); } / ** * 1) JDK поставляется с HTTP -соединением, чтобы получить страницу или JSON * @param запрос * @param charset * @return * @Throws Exception * / public Static String jdkfetch (строка запроса, строка charset) throws exception {url url = new URL (запрос); Httpurlconnection conn = (httpurlconnection) url.openconcenection (); // Издеваться над параметрами браузера conn.setrequestproperty («Пользовательский агент», «Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebkit/537,36" + "(KHTML, как 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 (input, charset)); Строка S; while ((s = reader.readline ())! = null) {sb.append (s + "/n"); } input.close (); conn.disconnect (); вернуть sb.toString (); } возвращаться ""; } / ** * 2) JDK поставляется с собственным URL -соединением, чтобы получить страницу или JSON * @param запрос * @param charset * @return * @Throws Exception * / public Static String urlFetch (строка запрос, строка charset) thrifts exection {url url = new URL (запрос); вернуть ioutils.tostring (url.openstream ()); } / ** * 3) httpclient Получить инструмент, получить страницу или json * @param url * @param charset * @return * @throws Exception * / public Static String httpclientfetch (string url, string charset) thripting exception {// het httpclient httpclient = new httpclient (); httpclient.getParams (). SetContentArset (charset); Httpmethod method = new getmethod (url); httpclient.executemethod (метод); return Method.getResponseBodyAssTring (); } / ** * 4) Инструмент Commons-IO, GET Page или JSON * @param url * @param charset * @return * @Throws Exception * / public Static String CommonsiOfetch (string url, string charset) throws Exception {return iOutils.toString (new url (url), charset); } / ** * 5) инструмент jsoup (обычно используется для анализа поля HTML), получить страницы, формат возврата без JSON * @param url * @return * @Throws Exception * / public Static String JSoupFetch (String url) Throws Exception {return jsoup.parse (new url (url), 2 * 1000) .html (); }}Тестовый код:
Пакет com.yeezhao.common.http; import org.junit.after; import org.junit.before; Import org.junit.test;/*** Тестовый класс* 3 Тестовые ссылки:* 1) Веб -страница Encyclopedia* 2) Моделирование браузера для получения интерфейса* 3). Httpfetchutiltest {String Seeds [] = {"http://baike.baidu.com/view/1.htm","http://m.ximalaya.com/tracks/26096131.json","http:///tracks/26096131.json","http:///tracks/26096131.json","http:///tracks/26096131.json", remyapi.yeezhao.com/api/query?wd=%E5%91%A8%E6%98%9F%E9%A9%B0%E7%9A%84%E7%94%B5%E5%BD%B1 "}; окончательная статическая строка default_charset = "utf-8"; @Before public void setup () бросает исключение {} @after public void teardown () throws exection {System.out.println ("--- Down ---"); } @Test public void testgetResponsecode () throws exception {for (String Seed: Seeds) {int responsecode = httpfetchutil.getResponsecode (seed); System.out.println ("ret ="+responsecode); }} @Test public void testjdkfetch () бросает Exception {for (String Seed: Seeds) {string ret = httpfetchutil.jdkfetch (seed, default_charset); System.out.println ("ret ="+ret); }} @Test public void testurlFetch () throws Exception {for (String Seed: Seeds) {string ret = httpfetchutil.urlfetch (seed, default_charset); System.out.println ("ret ="+ret); }} @Test public void testhttpclientfetch () throws exception {for (String Seed: Seeds) {string ret = httpfetchutil.httpclientfetch (seed, default_charset); System.out.println ("ret ="+ret); }} @Test public void testCommonsiOfetch () throws Exception {for (String Seed: Seeds) {string ret = httpfetchutil.commonsioFetch (seed, default_charset); System.out.println ("ret ="+ret); }} @Test public void testjsoupfetch () throws Exception {for (String Seed: Seeds) {string ret = httpfetchutil.jsoupfetch (seed); System.out.println ("ret ="+ret); }}}Привязанность: связанные варки зависимости
... <seyedency> <groupid> org.jsoup </GroupId> <artifactid> jsoup </artifactid> <sersive> 1.7.3 </version> </vehysemence> <deyedency> <groupid> commons-httpclient </GroupId> <ArtifactId> com ons-httpclient </artifactid> <sersion> 3.1 </version> </dependency> <Depective> <groupId> commons-io </GroupId> <artifactid> commons-io </artifactid> <sersion> 2.4 </version> </vehyse> ...
Выше всего содержание этой статьи. Я надеюсь, что это будет полезно для каждого обучения, и я надеюсь, что все будут поддерживать Wulin.com больше.