public abstract class HttpsURLConnection extends HttpURLConnection

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

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

    从1.4版本开始,此类使用 HostnameVerifier 和 SSLSocketFactory。为这两个类都定义了默认实现。但是,可以根据每个类(静态的)或每个实例来替换该实现。所有新 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 ;
}
}

  

    

java爬虫HttpURLConnect获取网页源码的更多相关文章

  1. Python爬虫学习之获取网页源码

    偶然的机会,在知乎上看到一个有关爬虫的话题<利用爬虫技术能做到哪些很酷很有趣很有用的事情?>,因为强烈的好奇心和觉得会写爬虫是一件高大上的事情,所以就对爬虫产生了兴趣. 关于网络爬虫的定义 ...

  2. C语言之socket获取网页源码

    写爬虫也许你用的是python,类似urlopen(url).read()即可获得普通的网页的源码,或者用的java的网络库加上流操作,或者其他高级语言.但你有没有想过使用C语言来实现呢?我曾经以为用 ...

  3. QT:轻松获取网页源码

    获取网页源码的小例子,代码很简单,就不多作解释了. 不过一定要注意网页的编码问题,否则会出现乱码的!!! #include <QtCore> #include <QtNetwork& ...

  4. vc++获取网页源码

    1. 获取网页源码的步骤: com组件的初始化 创建WinHttpRequest对象 创建并实例化WinHttpRequest组件 调用Open方法打开连接 调用Send方法发送请求 使用Respon ...

  5. vc++获取网页源码之使用import+接口方式

    1.使用IWinHttpRequest获取网页源码 首先要创建基于对话框的mfc应用程序 2.import+接口方式 首先导入winhttp.dll,使用IWinHttpRequest接口 #impo ...

  6. 高效获取网页源码COM

    目前获取网页源码有几种方法: 1.WebClient下载页面2.HttpWebRequest发请求获取3.com组件xmlhttp获取 三者比较:WebClient代码最少,效率最慢:xmlhttp代 ...

  7. Python3 Selenium WebDriver网页的前进、后退、刷新、最大化、获取窗口位置、设置窗口大小、获取页面title、获取网页源码、获取Url等基本操作

    Python3 Selenium WebDriver网页的前进.后退.刷新.最大化.获取窗口位置.设置窗口大小.获取页面title.获取网页源码.获取Url等基本操作 通过selenium webdr ...

  8. Python3.x获取网页源码

    Python3.x获取网页源码 1,获取网页的头部信息以确定网页的编码方式: import urllib.request res = urllib.request.urlopen('http://ww ...

  9. c# HttpClient获取网页源码

    #region 获取网页源码 public static string HttpClientGetHtmls(string url) { try { var client = new HttpClie ...

随机推荐

  1. ABP框架个人开发实战(1)_环境搭建

    前言 之前关注ABP框架有一阵子了,一直没有潜下心来实际研究一下.最近想自己建站,以后有自己的功能开发项目,可以在自己的站点上开发,并一步步的完善,所以找个比较好用的框架迫在眉睫,选来选去,决定用AB ...

  2. js实现小球的弹性碰撞。

      前  言 MYBG 小编最近在做自己的个人网站,其中就用到了一个小球碰撞检测的功能,想自己写,无奈本人能力不足啊(毕竟还是一个菜鸟)!!就想着找个插件用一下也好,可是找了好久也没有找到一个比较好用 ...

  3. express的学习,与使用

    最近在学习vue的一个实战项目,碰到一个express,当时很萌,就随便看了看................ expres是基于node 的一个web框架, 首先可以找到它的官网照着学习 这里只讲一 ...

  4. unity下跨平台excel读写

    这是以前写的跨windows和ios读写excel的工具,因为原来导表工具引用的第三方读写excel的dll只能在windos下使用,造成要在mac机器上跑PC端或者打包的时候,每次都要先在windo ...

  5. linux C/C++开发环境搭建指南

    一.安装基本开发环境 1.配置GCC 刚装好的系统中已经有GCC了,但是这个GCC什么文件都不能编译,因为没有一些必须的头文件,所以要安装build-essential这个软件包,安装了这个包会自动安 ...

  6. [转载] Redis资料汇总专题

    转载自http://www.cnblogs.com/tommyli/archive/2011/12/14/2287614.html 1.Redis是什么? 十五分钟介绍 Redis数据结构 Redis ...

  7. SICK激光雷达LMS511测量数据说明

    帧结构说明 LMS511的官方手册存在几个版本,在<Laser Measurement Systems of the LMS500 Product Family>的英文手册中,对单次(连续 ...

  8. Spring4 AOP详解

    Spring4 AOP详解 第一章Spring 快速入门并没有对Spring4 的 AOP 做太多的描述,是因为AOP切面编程概念不好理解.所以这章主要从三个方面详解AOP:AOP简介(了解),基于注 ...

  9. CDH5.11..0安装

    1.参考: http://www.cnblogs.com/codedevelop/p/6762555.html grant all privileges on *.* to 'root'@'hostn ...

  10. C语言的scanf函数

    一. 变量的内存分析 1. 字节和地址 1> 内存以“字节为单位”,Oxffc1,Oxffc2,Oxffc3,Oxffc4....都是字节 ,0x表示的是十六进制 2> 不同类型占用的字节 ...