zoukankan      html  css  js  c++  java
  • HTTPS请求 SSL证书验证

    import urllib2
    
    url = "https://www.12306.cn/mormhweb/"
    
    headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.99 Safari/537.36"}
    
    request = urllib2.Request(url, headers = headers)
    
    response = urllib2.urlopen(request)
    
    print response.read()
    

      

    运行结果:

    urllib2.URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590)>

    所以,如果以后遇到这种网站,我们需要单独处理SSL证书,让程序忽略SSL证书验证错误,即可正常访问。

    import urllib
    import urllib2
    # 1. 导入Python SSL处理模块
    import ssl
    
    # 2. 表示忽略未经核实的SSL证书认证
    context = ssl._create_unverified_context()
    
    url = "https://www.12306.cn/mormhweb/"
    
    headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.99 Safari/537.36"}
    
    request = urllib2.Request(url, headers = headers)
    
    # 3. 在urlopen()方法里 指明添加 context 参数
    response = urllib2.urlopen(request, context = context)
    
    print response.read()
    

      

  • 相关阅读:
    条件
    循环
    列表
    字典
    集合
    公共操作
    函数-2
    函数-1
    函数加强
    文件操作
  • 原文地址:https://www.cnblogs.com/alamZ/p/7401847.html
Copyright © 2011-2022 走看看