亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》
  • 首頁 > 
  • 教程 > 
  • 開發技術 > 
  • 如何使用python實現切割url得到域名、協議、主機名等各個字段的例子

如何使用python實現切割url得到域名、協議、主機名等各個字段的例子

發布時間:2021-04-06 13:00:06 來源:億速云 閱讀:588 作者:小新 欄目:開發技術

這篇文章給大家分享的是有關如何使用python實現切割url得到域名、協議、主機名等各個字段的例子的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

實現代碼:

#!/usr/bin/python
# -*- coding: UTF-8 -*-

功能: 對URL進行分割,基于urlparse, publicsuffix, urllib編寫
'''
from urlparse import urlparse
import codecs
from publicsuffix import PublicSuffixList
from urllib import splitport
import re
 
 
def domain_split(server_domain):
  '''
  server_domain為網站所用服務名+域名
  分割域名, 得到前綴(服務名)、主機域名、后綴(頂級域名)
    輸入www.baidu.com,輸出'www', 'baidu', 'com'
    輸入172.31.137.240,輸出'', '172.31.137.240', ''
  '''
  PSL_FILE = codecs.open('public_suffix_list.dat', encoding='utf8')
  psl = PublicSuffixList(PSL_FILE)
  domain = psl.get_public_suffix(server_domain)
  # 取域名的第一個字段,即第一個'.'之前的為主機域名, 后面為頂級域名,前面為所使用的服務
  if '.' in domain:
    server = server_domain[:-len(domain)]
    host = domain[:domain.index('.')]
    top = domain[domain.index('.'):]
    hostname = server + host + top
  else: # 說明提取域名失敗,例如172.31.137.240等IP形式,此時全部當作主機域名
    server = ''
    host = server_domain
    top = ''
    hostname = server_domain
  return server, host, top, hostname
 
 
def url_split_new(url):
  '''
  url分割
  '''
  if not url.startswith('http'): # 補全協議,否則urlparse出錯
    url = 'http://' + url
  parts = urlparse(url)
  # 服務+域名'www.baidu.api.com.cn'切分
  server, host, top, hostname = domain_split(parts.netloc)
  host, port = splitport(host)
  if port == None: port = ''
  return {'protocol': parts.scheme, 'hostname': hostname, 'path': parts.path}
 
 
if __name__ == '__main__':
  print url_split_new('http://www.baidu.com/')
  print url_split('http://www.baidu.com/')

感謝各位的閱讀!關于“如何使用python實現切割url得到域名、協議、主機名等各個字段的例子”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

大埔县| 宜兴市| 汉寿县| 报价| 米林县| 二连浩特市| 黎川县| 宿松县| 鞍山市| 花莲县| 惠水县| 姜堰市| 东城区| 平和县| 台湾省| 兴安县| 深泽县| 鄄城县| 交城县| 沐川县| 静乐县| 海门市| 东明县| 九寨沟县| 台北县| 鄂托克旗| 芦溪县| 梅河口市| 舞钢市| 文登市| 峨眉山市| 双鸭山市| 河津市| 民乐县| 安陆市| 南昌县| 南京市| 广灵县| 东兴市| 鹿泉市| 织金县|