Python请求无效的URL,验证失败

时间:2019-11-13 00:14:18

标签: python python-3.x python-requests

在URL中用verify = False时,出现以下错误:requests.exceptions.MissingSchema:无效的URL”:未提供任何模式。也许您是说http://?

当我将其保留在网址之外时,会出现此错误: SSL:CERTIFICATE_VERIFY_FAILED]证书验证失败:自签名证书

在两种情况下,verify = False都将作为响应= requests.request。

代码如下:

import requests
import urllib3
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
import json
from requests.auth import HTTPBasicAuth

src = input('Source > ')
dst = input('Destination > ')
svc = input('port > ')

url = requests.get('https://192.168.1.1/securetrack/api/topology/path', auth=HTTPBasicAuth('admin', 'p@ss'))

querystring = {"src":src,"dst":dst,"service": svc}

headers = {
    'Accept': "application/json",
    }

response = requests.request("GET", url, headers=headers, params=querystring, verify=False)

print(response.text)

2 个答案:

答案 0 :(得分:0)

import requests
import urllib3
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
import json
from requests.auth import HTTPBasicAuth

src = input('Source > ')
dst = input('Destination > ')
svc = input('port > ')

url = 'https://192.168.1.1/securetrack/api/topology/path'

querystring = {"src":src,"dst":dst,"service": svc}

headers = {'Accept': 'application/json'}

response = requests.get(url, headers=headers, params=querystring, verify=False, auth=HTTPBasicAuth('admin', 'p@ss'))

print(response.text)

答案 1 :(得分:0)

您的url变量包含一个请求对象,然后您尝试将其作为URL字符串传递到requests.request中。试试这个:

import requests
import urllib3
urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning)
import json
from requests.auth import HTTPBasicAuth

src = input('Source > ')
dst = input('Destination > ')
svc = input('port > ')
url = 'https://192.168.1.1/securetrack/api/topology/path'

querystring = {"src":src,"dst":dst,"service": svc}

headers = {
    'Accept': "application/json",
    }

response = requests.request(method="GET", url=url, headers=headers, params=querystring, verify=False, auth=HTTPBasicAuth('admin', 'p@ss'))
print(response.text)