try_parse_url

Jedná se o speciální verzi parse_url , která provádí stejnou operaci, ale vrátí hodnotu NULL místo vyvolání chyby, pokud analýzu nelze provést.

Syntaxe

from pyspark.sql import functions as sf

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

Parametry

Parameter Typ Description
url pyspark.sql.Column nebo str Sloupec řetězců, z nichž každý představuje adresu URL.
partToExtract pyspark.sql.Column nebo str Sloupec řetězců, z nichž každá představuje část, která se má extrahovat z adresy URL.
key pyspark.sql.Column nebo str, volitelné Sloupec řetězců, z nichž každý představuje klíč parametru dotazu v adrese URL.

Návraty

pyspark.sql.Column: Nový sloupec řetězců, z nichž každá představuje hodnotu extrahované části z adresy URL.

Examples

Příklad 1: Extrahování části dotazu z adresy 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|
+------------------------+

Příklad 2: Extrahování hodnoty konkrétního parametru dotazu z adresy 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|
+-----------------------------+

Příklad 3: Extrahování části protokolu z adresy 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|
+------------------------+

Příklad 4: Extrahování hostitelské části z adresy 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|
+------------------------+

Příklad 5: Extrahování části cesty z adresy 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|
+------------------------+

Příklad 6: Neplatná adresa 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|
+-----------------------------+