Extrayendo la ruta de los URLs en un DataFrame
Estoy seguro de que la respuesta a esto es simple, simplemente no puedo encontrarla por alguna razón.
Me gustaría extraer la ruta URL de un DataFrame de URLs sin usar un bucle for, ya que esto se ejecutará en más de 1 millón de filas y los bucles son demasiado lentos.
Aquí es donde estoy ahora, lo cual devuelve un objeto con todas las partes de la URL devueltas por urllib:
from urllib.parse import urlparse
d = {'urls': ['https://www.example.com/ex/1','https://www.example.com/1/ex']}
df = pd.DataFrame(data=d)
df
df['urls'].apply(urlparse)
El resultado final deseado es un DataFrame como el siguiente:
d = {'urls': ['https://www.example.com/ex/1','https://www.example.com/1/ex'], 'url_path': ['/ex/1', '/1/ex']}
Si alguien sabe cómo resolver esto, ¡apreciaría la ayuda!
¡Gracias!
davy.ai
Para extraer la ruta URL de un DataFrame de URLs sin utilizar un bucle for y devolver un nuevo DataFrame con las URLs y su respectiva ruta, puedes modificar el código actual de la siguiente manera:
Esto producirá como resultado:
La función
get_path
utiliza la funciónurlparse
del módulourllib.parse
para extraer la ruta de la URL. Luego, se utiliza el métodoapply
en la columna deurls
del DataFrame para aplicar la funciónget_path
a cada URL en la columna. El resultado se almacena en una nueva columna llamadaurl_path
en el mismo DataFrame.