使用Python测试在服务器上是否找到给定页面
在本文中,我们将编写一个Python脚本来测试在服务器上是否找到给定页面。我们将看到不同的方法来做同样的事情。
方法一:使用Urllib。
Urllib 是一个包,允许您通过程序访问网页。
安装:
pip install urllib
方法:
- 导入模块
- 在 urllib.request() 中传递 URL 读取 URLs
- 现在检查包含 urllib.request 引发的异常的 urllib.error
执行:
Python3
# import module
from urllib.request import urlopen
from urllib.error import *
# try block to read URL
try:
html = urlopen("https://www.geeksforgeeks.org/")
# except block to catch
# exception
# and identify error
except HTTPError as e:
print("HTTP error", e)
except URLError as e:
print("Opps ! Page not found!", e)
else:
print('Yeah ! found ')
Python3
# import module
import requests
# create a function
# pass the url
def url_ok(url):
# exception block
try:
# pass the url into
# request.hear
response = requests.head(url)
# check the status code
if response.status_code == 200:
return True
else:
return False
except requests.ConnectionError as e:
return e
# driven code
url = "https://www.geeksforgeeks.org/"
url_ok(url)
输出:
Yeah ! found
方法二:使用请求
Request 允许您非常轻松地发送 HTTP/1.1 请求。这个模块也没有内置于Python中。要安装此类型,请在终端中输入以下命令。
安装:
pip install requests
方法:
- 导入模块
- 将 URL 传递到 requests.head()
- 如果 response.status_code == 200 则服务器已启动
- 如果回应。 status_code == 404 然后服务器停机
执行:
蟒蛇3
# import module
import requests
# create a function
# pass the url
def url_ok(url):
# exception block
try:
# pass the url into
# request.hear
response = requests.head(url)
# check the status code
if response.status_code == 200:
return True
else:
return False
except requests.ConnectionError as e:
return e
# driven code
url = "https://www.geeksforgeeks.org/"
url_ok(url)
输出:
True