首页 > 解决方案 > 使用 Python 请求模块获取 VPN 后面的 URL

问题描述

我的公司 VPN 后面的 URL 很少,我可以获得其 IP。我想在不打开 VPN 的情况下使用 Python 的请求模块创建到这些 URL 的连接。

使用代理是这里流行的解决方案之一,但我无法验证它们是否也适用于内部 VPN。

假设 IP 地址是VPN 后面 URL 的http://abcd/

我的 Python3 脚本如下所示:

import requests 

proxy = "a.b.c.d"

request_data =requests.get("http://api/json", proxies={"http":"http://%s" % proxy})
print(request_data)

我正在尝试在没有 VPN 的情况下创建与http://abcd/api/json的连接。

预期结果:200(表示连接成功)

我也尝试使用 urllib2 模块但没有任何成功。

Python脚本:

import urllib2

proxy = "a.b.c.d" 

proxies = {"http":"http://%s" % proxy}
url = "http://api/json"

proxy_support = urllib2.ProxyHandler(proxies)

opener = urllib2.build_opener(proxy_support, urllib2.HTTPHandler(debuglevel=1))
urllib2.install_opener(opener)

req = urllib2.Request(url, None, headers)
print(req)

两者的脚本代码取自堆栈溢出的另一个答案。

我可能在定义 URL 时犯了错误,但我认为修复它不会解决我的问题。

我们一直使用的 VPN 客户端是 GlobalProtect。

标签: python-3.xpython-requestsurllib2vpn

解决方案


推荐阅读