java爬虫HttpURLConnect获取网页源码


public abstract class HttpsURLConnection extends HttpURLConnection
 
 

HttpsURLConnection 扩展 HttpURLConnection,支持各种特定于 https 功能。

有关 https 规范的更多详细信息,请参见 http://www.w3.org/pub/WWW/Protocols/RFC 2818

    从1.4版本开始,此类使用 HostnameVerifierSSLSocketFactory。为这两个类都定义了默认实现。但是,可以根据每个类(静态的)或每个实例来替换该实现。所有新 HttpsURLConnection 实例在创建时将被分配“默认的”静态值,通过在连接前调用每个实例适当的 set 方法可以重写这些值。

    构造方法  :

      HttpsURLConnection(URL url)  使用指定的 URL 创建 HttpsURLConnection

    参数 :  URL

    方法摘要  :    

 abstract  String   getCipherSuite() 
                返回在此连接上使用的密码套件。

static HostnameVerifier  getDefaultHostnameVerifier() 
                获取此类的新实例所继承的默认 HostnameVerifier

static SSLSocketFactory  getDefaultSSLSocketFactory() 
                获取此类的新实例所继承的默认静态 SSLSocketFactory

HostnameVerifier  getHostnameVerifier() 
                获取此实例适当的 HostnameVerifier

abstract  Certificate[]  getLocalCertificates() 
                返回握手期间发送给服务器的证书。

Principal  getLocalPrincipal() 
                返回握手期间发送到服务器的主体。

Principal  getPeerPrincipal() 
                返回服务器的主体,它是作为定义会话的一部分而建立的。

abstract  Certificate[]  getServerCertificates() 
                返回服务器的证书链,它是作为定义会话的一部分而建立的。

SSLSocketFactory  getSSLSocketFactory() 
                获取为安全 https URL 连接创建套接字时使用的 SSL 套接字工厂。

static void  setDefaultHostnameVerifier(HostnameVerifier v) 
                设置此类的新实例所继承的默认 HostnameVerifier

static void setDefaultSSLSocketFactory(SSLSocketFactory sf) 
                设置此类的新实例所继承的默认 SSLSocketFactory

void setHostnameVerifier(HostnameVerifier v) 
                设置此实例的 HostnameVerifier

void setSSLSocketFactory(SSLSocketFactory sf) 
                设置当此实例为安全 https URL 连接创建套接字时使用的 SSLSocketFactory


           示例代码如下,采取了单例设计模式 。

package HttpURLConnect;

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;

public class GetUrl {
    private static GetUrl getUrl ;
    private static String index ;
    private GetUrl(String url) {
        URL u ;
        HttpURLConnection httpURLConnection ;
        BufferedReader bf ;
        String readLine  ;
        try{
            u = new URL(url) ;
            httpURLConnection = (HttpURLConnection)u.openConnection() ;
            int responsecode = httpURLConnection.getResponseCode() ;  // 返回码
            if(responsecode==200) {
                bf = new BufferedReader(new InputStreamReader(httpURLConnection.getInputStream(), "UTF-8"));
                while ((readLine = bf.readLine()) != null) {
                    index += readLine += "\r\n";
                }
            }else{
                System.out.println("NOT  "+responsecode);
            }
        }catch(Exception e){
            System.out.println("Exception->"+e);
        }
    }
    public static String getGetUrl(String url){
        getUrl = new GetUrl(url);
        return getUrl.index ;
    } 
}

 

           

 

    

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值