当前位置: 首页 > news >正文

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 ;
    } 
}

 

           

 

    

 

相关文章:

  • Oracle 监听器无法启动(TNS-12537,TNS-12560,TNS-00507)
  • 开发微信小程序中SSL协议的申请、证书绑定、TLS 版本处理等
  • 422. 最后一个单词的长度
  • ansible分发密钥
  • JavaWeb-HttpServletResponse对象一
  • JS~模拟表单在新窗口打开,避免广告拦截
  • mysql分表经验总结
  • Lind.DDD.Messaging框架通讯组件介绍
  • 未完成.队列
  • vuex的使用
  • 21、PHP和python/JAVA比,哪个更好学?
  • word 2007每次打开总出现setup error
  • C# WinForm开发系列 - GDI+【转】
  • 【自用】 Kotlin 创建自己的对话框
  • 从antlr扯淡到一点点编译原理
  • [case10]使用RSQL实现端到端的动态查询
  • 07.Android之多媒体问题
  • CSS盒模型深入
  • iOS 系统授权开发
  • Lucene解析 - 基本概念
  • nginx(二):进阶配置介绍--rewrite用法,压缩,https虚拟主机等
  • SpingCloudBus整合RabbitMQ
  • ViewService——一种保证客户端与服务端同步的方法
  • 从输入URL到页面加载发生了什么
  • 飞驰在Mesos的涡轮引擎上
  • 工程优化暨babel升级小记
  • 类orAPI - 收藏集 - 掘金
  • 算法系列——算法入门之递归分而治之思想的实现
  • 为视图添加丝滑的水波纹
  • 我感觉这是史上最牛的防sql注入方法类
  • 正则学习笔记
  • 【干货分享】dos命令大全
  • #宝哥教你#查看jquery绑定的事件函数
  • (10)工业界推荐系统-小红书推荐场景及内部实践【排序模型的特征】
  • (145)光线追踪距离场柔和阴影
  • (3)选择元素——(17)练习(Exercises)
  • (附源码)springboot宠物医疗服务网站 毕业设计688413
  • (十七)devops持续集成开发——使用jenkins流水线pipeline方式发布一个微服务项目
  • (小白学Java)Java简介和基本配置
  • (转)EOS中账户、钱包和密钥的关系
  • (转)GCC在C语言中内嵌汇编 asm __volatile__
  • (转)linux 命令大全
  • .bat批处理(十):从路径字符串中截取盘符、文件名、后缀名等信息
  • .htaccess配置重写url引擎
  • .net FrameWork简介,数组,枚举
  • .NET/ASP.NETMVC 大型站点架构设计—迁移Model元数据设置项(自定义元数据提供程序)...
  • .NET/C# 的字符串暂存池
  • .NET值类型变量“活”在哪?
  • .Net中ListT 泛型转成DataTable、DataSet
  • @SentinelResource详解
  • []AT 指令 收发短信和GPRS上网 SIM508/548
  • [100天算法】-实现 strStr()(day 52)
  • [8-23]知识梳理:文件系统、Bash基础特性、目录管理、文件管理、文本查看编辑处理...
  • [Android Studio 权威教程]断点调试和高级调试
  • [Angular] 笔记 20:NgContent