これは、同じ操作を実行する特殊なバージョンの parse_url ですが、解析を実行できない場合はエラーを発生させる代わりに NULL 値を返します。
構文
from pyspark.sql import functions as sf
sf.try_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.try_parse_url(df.url, df.part)).show()
+------------------------+
|try_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.try_parse_url(df.url, df.part, df.key)).show()
+-----------------------------+
|try_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.try_parse_url(df.url, df.part)).show()
+------------------------+
|try_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.try_parse_url(df.url, df.part)).show()
+------------------------+
|try_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.try_parse_url(df.url, df.part)).show()
+------------------------+
|try_parse_url(url, part)|
+------------------------+
| /path|
+------------------------+
例 6: 無効な URL
from pyspark.sql import functions as sf
df = spark.createDataFrame(
[("inva lid://spark.apache.org/path?query=1", "QUERY", "query")],
["url", "part", "key"]
)
df.select(sf.try_parse_url(df.url, df.part, df.key)).show()
+-----------------------------+
|try_parse_url(url, part, key)|
+-----------------------------+
| NULL|
+-----------------------------+