<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    asdtiang的博客 感謝blogjava提供的博客交流平臺

    java 根據IP獲取所在地

    Posted on 2010-08-12 16:21 asdtiang 閱讀(2072) 評論(1)  編輯  收藏 所屬分類: JAVA

    根據IP獲取所在地及服務商:
    直接給代碼吧:
    根據這個網站http://www.ip138.com為獲取地址。
    訪問地址為:http://www.ip138.com/ips.asp?ip=124.236.239.105&action=2
    構造connection,返回里直接字符串處理的,主要是自己的正則表達式沒學好啊
    返回中:

    <td align="center"><ul class="ul1"><li>本站主數據:河北省石家莊市 電信</li><li>參考數據一:河北省石家莊市 電信</li><li>參考數據二:河北省石家莊市 電信</li></ul></td>
    

    結果只取了主數據。

    public ? class ?GetIPArea? {
    ????
    ????
    // URL
    ???? private ? static ? final ?String?REQUEST_URL = " http://www.ip138.com/ips.asp " ;
    ????? ///////有時查詢不出來,就用這個URL??? http://www.ip138.com/ips8.asp
    ????
    //
    ???? private ? static ? final ?String?REQUEST_MOTHOD = " POST " ;
    ????
    // ????URL??HttpURLConnection????
    ???? private ? static ?HttpURLConnection?httpConn = null ;
    ????
    ????
    /**
    ?????*?IP
    ?????*?
    @return ?String
    ?????
    */

    ????
    public ? static ?String?getIPArea(String?ip)
    ????
    {
    ????????String?requestParameter
    = " ip= " + ip + " &action=2 " ;
    ????????String?IPArea
    = "" ;
    ????????BufferedReader?br
    = null ;
    ????????
    try
    ????????
    {
    ????????????httpConn
    = (HttpURLConnection) new ?URL(REQUEST_URL).openConnection();
    ????????????httpConn.setRequestMethod(REQUEST_MOTHOD);
    ????????????httpConn.setDoOutput(
    true );
    ????????????httpConn.getOutputStream().write(requestParameter.getBytes());
    ????????????httpConn.getOutputStream().flush();
    ????????????httpConn.getOutputStream().close();
    ????????????
    ????????????br
    = new ?BufferedReader( new ?InputStreamReader(httpConn.getInputStream(), " gb2312 " ));
    ????????????String?lineStr
    = null ;
    ????????????
    while ((lineStr = br.readLine()) != null )
    ????????????
    {
    ????????????????
    if (lineStr.contains( " <td?align=\ " center\ " ><ul?class=\ " ul1\ " ><li> " ))
    ????????????????
    {
    ????????????????????IPArea
    = lineStr.substring(lineStr.indexOf( " " ) + 1 ,lineStr.indexOf( " </ " ));
    ????????????????????
    break ;
    ????????????????}

    ????????????}

    ????????}

    ????????
    catch (IOException?e)? {
    ????????????e.printStackTrace();
    ????????}

    ????????
    finally
    ????????
    {
    ????????????
    if (br != null )
    ????????????????
    try ? {
    ????????????????????br.close();
    ????????????????}
    ? catch ?(IOException?e)? {
    ????????????????????e.printStackTrace();
    ????????????????}

    ????????}

    ????????
    return ?IPArea;
    ????}

    ????
    public ? static ? void ?main(String?args[]) {
    ????????System.out.println(GetIPArea.getIPArea(
    " 124.236.239.105 " ));
    ????}

    }

    http編碼問題在這里也順便記一下。
    br=new BufferedReader(new InputStreamReader(httpConn.getInputStream(),"gb2312"));//在這個地方加上編碼

    這種方法獲取IP很不穩定,容易獲取不到,我測試是這樣的,最好的方法還是有自己的IP數據庫。
    純真IP數據庫剛好可以用上。
    具體參考:http://javagp.group.javaeye.com/group/topic/11866
    在他的博客上有源碼下載,直接用就可以了





    主要參考?? http://gzhzh.javaeye.com/blog/425458



    天蒼蒼,野茫茫,風吹草底見牛羊

    Feedback

    # 免費SVN svn.jsp1.net  回復  更多評論   

    2012-05-11 09:11 by 張嘎子
    不錯,速度很快

    posts - 80, comments - 24, trackbacks - 0, articles - 32

    Copyright © asdtiang

    asdtiang的博客 PaidMailz
    點擊廣告網賺A(每天4個廣告,每個0.0025美元,一個搜索廣告0.03美元)
    主站蜘蛛池模板: 在线看片无码永久免费视频| 亚洲欧洲AV无码专区| 午夜精品免费在线观看| 亚洲熟妇av一区二区三区| 亚美影视免费在线观看| 亚洲精品高清一二区久久| 一级免费黄色大片| 中文字幕亚洲综合久久菠萝蜜| a级毛片免费观看在线| 亚洲中文字幕无码爆乳av中文| 亚洲一级片免费看| 国产亚洲精品高清在线| 中国黄色免费网站| 亚洲国产成人片在线观看无码| 免费91最新地址永久入口| 亚洲人成电影在在线观看网色| 无码人妻久久一区二区三区免费| 亚洲激情在线观看| 四虎免费影院ww4164h| 亚洲精品第一国产综合野| 在线观看视频免费国语| 亚洲а∨精品天堂在线| 亚洲精品成人在线| 欧洲人免费视频网站在线| 亚洲精品第五页中文字幕| 免费做爰猛烈吃奶摸视频在线观看| 亚洲欧美日韩一区二区三区在线| 国产成人免费a在线资源| 日韩精品无码永久免费网站| 亚洲一区精品无码| 999久久久免费精品播放| 亚洲男人的天堂久久精品| 成人免费无码精品国产电影| 一级毛片a免费播放王色电影| 国产成人综合亚洲亚洲国产第一页| 老司机69精品成免费视频| 亚洲性猛交xx乱| 免费无码又爽又刺激高潮的视频| 欧洲美女大片免费播放器视频| 亚洲色精品vr一区二区三区| 91福利免费体验区观看区|