Tutorial de web scrapping en Glassdoor utilizando Python

Find AI Tools
No difficulty
No complicated process
Find ai tools

Tutorial de web scrapping en Glassdoor utilizando Python

Tabla de contenidos

  1. Introducción
  2. ¿Qué es la web scrapping?
  3. Tutorial de web scrapping usando Python
  4. ¿Qué es Glassdoor?
  5. ¿Qué datos se pueden obtener de Glassdoor?
  6. Paso 1: Importar librerías y enviar una solicitud GET
  7. Paso 2: Crear un objeto Beautiful Soup y analizar el HTML
  8. Paso 3: Obtener el nombre de la empresa
  9. Paso 4: Obtener el título del trabajo
  10. Paso 5: Obtener la ubicación del trabajo
  11. Paso 6: Obtener la descripción del trabajo
  12. Consejos para realizar web scrapping en Glassdoor
  13. Conclusión
  14. Recursos

Tutorial de web scrapping usando Python en Glassdoor

¡Hola amigos! En este tutorial, vamos a aprender cómo realizar web scrapping en Glassdoor utilizando Python. Glassdoor es una página web donde puedes buscar empleos, empresas y opiniones sobre las empresas. También puedes consultar información sobre salarios y otros detalles relevantes. En este video, nos centraremos en extraer datos sobre trabajos de científico de datos en Los Ángeles. Obtendremos información como el nombre de la empresa, el título del trabajo, la ubicación y la descripción de cada empleo. Entonces, ¡vamos al código!

Paso 1: Importar librerías y enviar una solicitud GET

Lo primero que debemos hacer es importar las librerías necesarias, como requests y BeautifulSoup. Luego, enviaremos una solicitud GET a la página de Glassdoor utilizando nuestra URL de interés y comprobaremos el código de estado de la solicitud.

import requests
from bs4 import BeautifulSoup

url = "https://www.glassdoor.com/jobs/data-scientist-jobs-SRCH_KO0,14_IP1.htm"

headers = {
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3"
}

response = requests.get(url, headers=headers)

if response.status_code == 200:
    print("La solicitud GET se realizó con éxito.")

Paso 2: Crear un objeto Beautiful Soup y analizar el HTML

Una vez que hemos confirmado que la solicitud se realizó correctamente, creamos un objeto Beautiful Soup para analizar el HTML de la página. Esto nos permitirá acceder a los datos que queremos extraer.

soup = BeautifulSoup(response.content, "lxml")

Paso 3: Obtener el nombre de la empresa

Para obtener el nombre de la empresa, inspeccionamos el HTML de la página y encontramos el elemento adecuado. En este caso, el nombre de la empresa se encuentra dentro de un div con la clase "job-info-item". Utilizamos la función find_all para encontrar todos los elementos con esa clase y luego extraemos el texto de cada elemento.

company_names = []
for job in soup.find_all("div", class_="job-info-item"):
    company_names.append(job.a.text.strip())

print("Nombres de las empresas:")
for name in company_names:
    print("- " + name)

Paso 4: Obtener el título del trabajo

De manera similar, buscamos el elemento que contiene el título del trabajo. En este caso, el título se encuentra dentro de un div con la clase "saved-job-titles". Utilizamos una combinación de find_all y el índice [0] para obtener el primer elemento de la lista.

job_titles = []
for job in soup.find_all("div", class_="saved-job-titles"):
    job_titles.append(job.a.text.strip())

print("Títulos de los trabajos:")
for title in job_titles:
    print("- " + title)

Paso 5: Obtener la ubicación del trabajo

La ubicación del trabajo se encuentra dentro de un div con la clase "job-info employee-location". Utilizamos una función similar a la anterior para encontrar y extraer el texto deseado.

locations = []
for job in soup.find_all("div", class_="job-info employee-location"):
    locations.append(job.span.text.strip())

print("Ubicaciones:")
for location in locations:
    print("- " + location)

Paso 6: Obtener la descripción del trabajo

Finalmente, buscamos la descripción completa del trabajo. Primero, obtenemos todos los enlaces que nos llevarán a las páginas individuales de cada empleo. Luego, utilizando cada enlace, hacemos una solicitud GET a la página correspondiente y extraemos la descripción del trabajo.

descriptions = []
links = []
for job in soup.find_all("div", class_="job-container"):
    link = "https://www.glassdoor.com" + job.a["href"]
    links.append(link)

for link in links:
    job_response = requests.get(link, headers=headers)
    job_soup = BeautifulSoup(job_response.content, "lxml")
    description = job_soup.find("div", class_="job-description-content").text.strip()
    descriptions.append(description)

print("Descripciones de los trabajos:")
for description in descriptions:
    print("- " + description)

¡Y eso es todo! Ahora tienes todos los datos que necesitas extraer de Glassdoor utilizando web scrapping. Recuerda ser respetuoso con los términos y condiciones del sitio web y considera el uso de proxies o servicios de IP para evitar ser bloqueado.

Si te gustó este video, asegúrate de darle me gusta y suscribirte a nuestro canal. No dudes en dejarnos tus comentarios y preguntas a continuación. ¡Gracias por tu atención y nos vemos en el próximo tutorial!

Recursos:

Most people like

Are you spending too much time looking for ai tools?
App rating
4.9
AI Tools
100k+
Trusted Users
5000+
WHY YOU SHOULD CHOOSE TOOLIFY

TOOLIFY is the best ai tool source.