【发布时间】:2021-04-11 12:54:34
【问题描述】:
问题是: 检查输入的链接是否有效,可选该链接可以输入为https://stackoverflow.com/ 和stackoverflow.com。
我试图解决它
input_url = str(input("Enter url: ")
result = re.findall(r'(http[s]?://)?\S+', input_url)
返回错误 - Invalid URL '': No schema supplied. Perhaps you meant http://?
没有urllib 或者别的什么,只能是正则表达式
完整代码:
import re, requests
from collections import Counter
from prettytable import PrettyTable
url_input = str(input("Enter url: "))
url_checked = re.findall(r'(http[s]?://)?\S+', url_input)[0] # берем первый элемент
response = requests.get(str(url_checked)) # запрос на введенную ссылку
result = re.findall( r"\"(?:http[s]?://)?([^:/\s\"]+)/?[^\"]*\"", response.text) # фильтрация ссылок
result.sort() # sorting by alphabet
# link - https://stackoverflow.com/
pt = PrettyTable(field_names = ["word", "counter"])
pt.add_rows(list(Counter(result).most_common()))
print(pt)
【问题讨论】:
标签: python regex url python-requests url-validation