Python中验证URL是否可以访问

Python中验证URL是否可以访问

今天下午的时候写RPC接口自动化的时候需要验证研发传过来的URL是否可以访问,由于自己是个垃圾,没写过Python,只是这段时间学了点Java,后通过度娘与Google查了挺久,总算是搞出来了,在此记录下。

需求

研发传过来URL,比如https://master.knife.staging.dev.in.chaitin.net:9443/或者https://fk01-test.knife.staging.dev.in.chaitin.net:9443/这种,有时候在本地运行接口自动化的话URL无法连接,需要给一个默认的URL

获取URL的方法

  1. 一开始在网上找的是通过request.urlopen(url)来获取它的一个response,之后再通过response.getcode()获取到返回码这种(如果有返回码),没有的话就进入异常分支
    在这里插入图片描述
    后面尝试的时候确实是可以的,会验证上面的URL,将结果保存到url_check.csv文件中,但是当时一拿到优点不太懂什么意思(太菜啦),并且觉得不是自己需要的就放弃了,后面查了try…except的意思之后才发现这个和Java中的try…catch的作用一样,处理异常。
  2. 后面又重新找了另外的一个方法,使用requests.get(url)获取返回码操作
    在这里插入图片描述
    但是这个如果在碰到无法访问的URL时会直接把错误的返回数据打印出来,这不是我需要的(这个按理说)

取消SSL验证

  1. 由于我需要验证的URL都是HTTPS方式的,所以在验证是否能够访问时需要取消ssl验证,其中request.get中可以添加verify参数取消验证,requests.get(url, verify=False)
  2. 使用request.urlopen时我以为也是使用verify参数的,后面发现报错,又重新找了一个方法:context = ssl._create_unverified_context(),之后使用下context这个参数等于这个值就可以啦(当然不要忘记导包)
    在这里插入图片描述

成果

最终使用了request.urlopen的方式验证的,下面放上:
在这里插入图片描述

另记–MacBook中安装flake8,并且在pycharm中配置检查代码

  1. 在pycharm的terminal中安装flake8之后再配置好像更容易成功
  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 你可以使用 Python 内置的 `urllib` 模块来验证网页是否可以打开。 使用 `urllib.request.urlopen()` 方法可以打开一个网页,它会返回一个 `http.client.HTTPResponse` 对象,你可以使用这个对象的 `status` 属性来判断网页是否可以打开。 如果打开成功,它会返回 `200`,表示 OK,否则会返回其它状态码,比如 `404` 表示 Not Found。 下面是一个简单的例子: ```python import urllib.request url = "https://www.baidu.com" try: response = urllib.request.urlopen(url) if response.status == 200: print("网页可以打开") else: print("网页打开失败") except urllib.error.HTTPError as e: print("网页打开失败,错误代码:", e.code) ``` 你也可以使用 requests 库来验证网页是否可以打开, 它更加简便易用 ```python import requests url = 'https://www.baidu.com' r = requests.get(url) if r.status_code == 200: print("网页可以打开") else: print("网页打开失败") ``` 希望对你有所帮助! ### 回答2: Python可以使用requests库来验证网页是否可以打开。首先需要安装requests库,可以使用pip命令进行安装:pip install requests。 接下来,在Python脚本引入requests库,并使用requests的get()方法发送一个GET请求来获取网页的响应。如果响应的状态码为200,则表示网页可以正常访问;如果状态码为其他数值,则表示网页无法正常访问。 下面是一个示例代码: ``` import requests def check_webpage(url): try: response = requests.get(url) if response.status_code == 200: print("网页可以正常访问") else: print(f"网页无法正常访问,状态码:{response.status_code}") except requests.exceptions.RequestException as e: print("网页无法正常访问,错误信息:", e) # 调用函数进行测试 check_webpage("https://www.example.com") # 替换为需要验证的网页URL ``` 上述代码,我们定义了一个check_webpage函数,接收一个URL参数。在函数使用requests.get()方法来发送GET请求,并通过response.status_code来获取响应的状态码。如果状态码为200,则表示网页可以正常访问,如果不是,则表示网页无法正常访问。 最后,我们调用check_webpage函数,并传入需要验证的网页URL,即可得到验证结果。 需要注意的是,以上代码只是一个简单的示例,实际应用可能还需要考虑更多的异常情况和处理逻辑。 ### 回答3: 要验证一个网页是否可以打开,我们可以使用Python的requests库来发送HTTP请求并检查响应状态码。以下是一种可能的实现方法: 首先,我们需要安装requests库,可以使用pip命令进行安装: ``` pip install requests ``` 然后,我们可以使用如下的Python代码来验证网页是否可以打开: ```python import requests def check_url(url): try: response = requests.get(url) if response.status_code == 200: print("网页可以正常打开") else: print("网页无法正常打开,状态码为", response.status_code) except requests.exceptions.RequestException as e: print("无法连接到网页:", str(e)) # 测试示例 check_url("https://www.example.com") ``` 在这个例子,我们定义了一个check_url函数,接收一个URL作为参数。我们使用requests库的get方法发送GET请求,并将响应存储在response变量。然后,我们检查response的状态码,如果状态码为200,表示网页可以正常打开。如果状态码不为200,则表示网页无法正常打开,并打印相应的状态码。如果连接出现异常,则打印错误消息。 我们可以通过调用check_url函数并传入要验证URL来进行测试。在这个示例,我们验证了"https://www.example.com"网页是否可以打开。 这是一个简单的方法来验证网页是否可以打开,你还可以根据自己的需求进行更复杂的验证和处理。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值