You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多
文档控制台
免费开始使用

如何在第三方Python库OSMnx中禁用SSL证书验证?

解决OSMnx在受限网络下的SSL验证问题

我来帮你搞定这个问题!在VPN或办公网络里OSMnx连不上Nominatim的情况挺常见的,要给所有查询统一设置ssl_verifyFalse,有两种靠谱的方法:

  • 全局配置(一次性生效所有查询)
    OSMnx自带全局配置工具,只需要在脚本开头加一行代码,就能让所有后续的OSMnx请求都跳过SSL证书验证:

    import osmnx as ox
    # 全局禁用SSL证书对等验证
    ox.config(ssl_verify=False)
    

    这样不管你后面调用graph_from_placegeocode还是其他需要请求Nominatim的函数,都会自动套用这个设置,不用每次都手动传参数。

  • 单个函数调用(按需灵活设置)
    如果你不想全局修改配置,也可以在每个需要发起请求的函数里单独传入ssl_verify=False参数。比如:

    import osmnx as ox
    # 仅针对这个地图生成请求禁用SSL验证
    G = ox.graph_from_place("Beijing, China", ssl_verify=False)
    # 针对地理编码请求单独设置
    location = ox.geocode("Shanghai, China", ssl_verify=False)
    

    这种方式更灵活,适合只需要在特定请求里跳过验证的场景。

注意:正如你提到的,禁用SSL证书对等验证确实存在安全风险,可能会让你的请求被中间人攻击篡改数据。所以请只在你完全信任的网络环境(比如公司内部VPN、可信办公网络)下使用这个设置,不要在公共网络里开启。

内容的提问来源于stack exchange,提问作者Charles Bushrow

火山引擎 最新活动