次の方法で共有


parse_url

URL から指定した部分を抽出します。 キーが指定されている場合は、関連付けられているクエリ パラメーター値が返されます。

構文

from pyspark.sql import functions as sf

sf.parse_url(url, partToExtract, key=None)

パラメーター

パラメーター タイプ Description
url pyspark.sql.Column または str URL を表す文字列の列。
partToExtract pyspark.sql.Column または str URL から抽出する部分を表す文字列の列。
key pyspark.sql.Column または str、省略可能 URL 内のクエリ パラメーターのキーを表す文字列の列。

返品ポリシー

pyspark.sql.Column: URL から抽出された部分の値を表す文字列の新しい列。

例示

例 1: URL からクエリ パーツを抽出する

from pyspark.sql import functions as sf
df = spark.createDataFrame(
  [("https://spark.apache.org/path?query=1", "QUERY")],
  ["url", "part"]
)
df.select(sf.parse_url(df.url, df.part)).show()
+--------------------+
|parse_url(url, part)|
+--------------------+
|             query=1|
+--------------------+

例 2: URL から特定のクエリ パラメーターの値を抽出する

from pyspark.sql import functions as sf
df = spark.createDataFrame(
  [("https://spark.apache.org/path?query=1", "QUERY", "query")],
  ["url", "part", "key"]
)
df.select(sf.parse_url(df.url, df.part, df.key)).show()
+-------------------------+
|parse_url(url, part, key)|
+-------------------------+
|                        1|
+-------------------------+

例 3: URL からプロトコル部分を抽出する

from pyspark.sql import functions as sf
df = spark.createDataFrame(
  [("https://spark.apache.org/path?query=1", "PROTOCOL")],
  ["url", "part"]
)
df.select(sf.parse_url(df.url, df.part)).show()
+--------------------+
|parse_url(url, part)|
+--------------------+
|               https|
+--------------------+

例 4: URL からホスト部分を抽出する

from pyspark.sql import functions as sf
df = spark.createDataFrame(
  [("https://spark.apache.org/path?query=1", "HOST")],
  ["url", "part"]
)
df.select(sf.parse_url(df.url, df.part)).show()
+--------------------+
|parse_url(url, part)|
+--------------------+
|    spark.apache.org|
+--------------------+

例 5: URL からパス部分を抽出する

from pyspark.sql import functions as sf
df = spark.createDataFrame(
  [("https://spark.apache.org/path?query=1", "PATH")],
  ["url", "part"]
)
df.select(sf.parse_url(df.url, df.part)).show()
+--------------------+
|parse_url(url, part)|
+--------------------+
|               /path|
+--------------------+