Python
 Computer >> コンピューター >  >> プログラミング >> Python

urllib.parse —URLをPythonのコンポーネントに解析します


このモジュールは、コンポーネント内のURL(Uniform Resource Locator)文字列を分割したり、コンポーネントを結合してURL文字列に戻したりするための標準インターフェイスを提供します。また、「相対URL」を「ベースURL」を指定して絶対URLに変換する機能もあります。

このモジュールは、次のURLスキームをサポートします-

  • ファイル
  • ftp
  • gopher
  • hdl
  • http
  • https
  • imap
  • mailto
  • mms
  • ニュース
  • nntp
  • プロスペロ
  • rsync
  • rtsp
  • rtspu
  • sftp
  • shttp
  • 一口
  • 一口
  • ニュース
  • svn
  • svn + ssh
  • telnet
  • ワイズ
  • ws
  • wss

urlparse()

この関数は、URLを6つのコンポーネントに解析し、6タプルを返します。これは、URLの一般的な構造に対応しています。各タプルアイテムは文字列です。コンポーネントは小さな部分に分割されず(たとえば、ネットワークの場所は単一の文字列です)、%エスケープは展開されません。戻り値は、次の属性で構成されるタプルのサブクラスのインスタンスです。

属性 インデックス 存在しない場合の値 スキームパラメータ ネットワークロケーション部分 スキームパラメータ パス 階層パス 空の文字列 最後のパス要素のパラメータ 空の文字列 クエリ クエリコンポーネント 空の文字列 フラグメント フラグメント識別子 空の文字列 ユーザー名 ユーザー名 なし パスワード パスワード なし ホスト名 なし ポート 存在する場合は整数としてのポート番号 なし
スキーム 0 URLスキーム指定子
netloc 1
2
パラメータ 3
4
5



ホスト名(小文字)

>>> from urllib.parse import urlparse
>>> url = 'https://mail.google.com/mail/u/0/?tab = rm#inbox'
>>> t = urlparse(url)
ParseResult(scheme = 'https', netloc = 'mail.google.com', path = '/mail/u/0/', params = '', query = 'tab = rm', fragment = 'inbox')

urlunparse(parts)

この関数は、urlparse()によって返されるタプルからURLを作成します。パーツ引数は、任意の6項目の反復可能にすることができます。

>>> from urllib.parse import urlunparse
>>> urlunparse(t)
'https://mail.google.com/mail/u/0/?tab = rm#inbox'

urlsplit(urlstring, scheme = '', allow_fragments = True):

これはurlparse()に似ていますが、URLからパラメータを分割しません。この関数は5タプルを返します:(アドレス指定スキーム、ネットワークロケーション、パス、クエリ、フラグメント識別子)。

>>> from urllib.parse import urlsplit
>>> urlsplit(url)
SplitResult(scheme = 'https', netloc = 'mail.google.com', path = '/mail/u/0/', query = 'tab = rm', fragment = 'inbox')

urlunsplit(パーツ)

この関数は、urlsplit()によって返されるタプルの要素を文字列として完全なURLに結合します。

URL引用機能は、プログラムデータを取得し、特殊文字を引用して非ASCIIテキストを適切にエンコードすることにより、URLコンポーネントとして安全に使用できるようにすることに重点を置いています。

quote()

この関数は、%xxエスケープを使用して文字列内の特殊文字を置き換えます。文字、数字、および文字「_.-〜」は引用符で囲まれません。

>>> from urllib.parse import quote
>>> q = quote(url)
'https%3A//mail.google.com/mail/u/0/%3Ftab%3Drm%23inbox'
quote_plus():

quote()と同様ですが、URLに入力するクエリ文字列を作成するときにHTMLフォーム値を引用するために必要な場合は、スペースをプラス記号に置き換えます。

unquote()

この関数は、%xxエスケープを同等の1文字に置き換えます。

>>> from urllib.parse import unquote
>>> unquote(q)
'https://mail.google.com/mail/u/0/?tab = rm#inbox'

urlencode()

この関数は、マッピングオブジェクトまたは2要素タプルのシーケンスをパーセントエンコードされたASCIIテキスト文字列に変換します。結果の文字列は、「&」文字で区切られた一連のキー=値のペアです。

>>> from urllib.parse import urlencode
>>> qry = {"name":"Rajeev", "salary":20000}
>>> urlencode(qry)
'name = Rajeev&salary = 20000'

  1. Python-パンダをセットに型キャストする

    パンダをSetに型キャストするには、set()を使用します。まず、DataFrameを作成しましょう- dataFrame = pd.DataFrame( { "EmpName": ['John', 'Ted', 'Jacob', 'Scarlett', 'Ami', 'Ted', 'Scarlett'], "Zone": ['North', 'South', 'South&

  2. Python(tkinter)のWebブラウザでプログラムでURLを開く

    Pythonには、複数の目的で使用される拡張機能とモジュールの豊富なライブラリがあります。 Webベースのコンテンツを操作するために、Pythonはウェブブラウザを提供しています モジュール。このモジュールは、ユーザーがアプリケーションでWebベースのコンテンツを表示できるようにする環境を作成します。 ウェブブラウザを使用するには 、ローカルマシンにインストールされていることを確認する必要があります。 import webbrowser モジュールがご使用の環境で使用できない場合は、次のコマンドを使用してインストールできます- pip install webbrowser 例 プログラムで