Programa dia 11 finalizado
This commit is contained in:
parent
c47a45839e
commit
d64aeec0fe
@ -1,41 +0,0 @@
|
||||
"""
|
||||
Web scraping básico
|
||||
|
||||
Con las librerias beautifulsoup4, lxml y requests
|
||||
|
||||
"""
|
||||
|
||||
import bs4
|
||||
import requests
|
||||
|
||||
# Variables
|
||||
url_base = 'http://books.toscrape.com/catalogue/page-{}.html'
|
||||
fin_url = True
|
||||
page = 0
|
||||
lista_titulos = []
|
||||
|
||||
# Bucle para formar url y añadir a una lista
|
||||
while fin_url:
|
||||
|
||||
page += 1
|
||||
page = str(page)
|
||||
|
||||
enlace = url_base.format(page)
|
||||
|
||||
resultado = requests.get(enlace)
|
||||
sopa = bs4.BeautifulSoup(resultado.text, 'lxml')
|
||||
|
||||
if resultado:
|
||||
page = int(page)
|
||||
|
||||
# Todos los títulos
|
||||
titulos = sopa.select('.product_pod a')
|
||||
|
||||
for title in titulos:
|
||||
if title.get('title') != None:
|
||||
lista_titulos.append(title.get('title'))
|
||||
|
||||
else:
|
||||
fin_url = False
|
||||
|
||||
print(lista_titulos)
|
51
dia_11/programa_web_scraping.py
Normal file
51
dia_11/programa_web_scraping.py
Normal file
@ -0,0 +1,51 @@
|
||||
"""
|
||||
Web scraping
|
||||
nivel intermedio
|
||||
|
||||
Con las librerias beautifulsoup4, lxml y requests
|
||||
|
||||
"""
|
||||
|
||||
import bs4
|
||||
import requests
|
||||
|
||||
# Variables
|
||||
URL_BASE = 'http://books.toscrape.com/catalogue/page-{}.html'
|
||||
FIN_URL = True
|
||||
PAGE = 0
|
||||
lista_titulos = []
|
||||
|
||||
print(f'\nLIBROS CON 4 O 5 ESTRELLAS\n')
|
||||
|
||||
# Bucle para formar url y añadir a una lista
|
||||
while FIN_URL:
|
||||
|
||||
PAGE += 1
|
||||
ENLACE = URL_BASE.format(PAGE)
|
||||
|
||||
resultado = requests.get(ENLACE)
|
||||
sopa = bs4.BeautifulSoup(resultado.text, 'lxml')
|
||||
|
||||
# Si existe la url
|
||||
if resultado:
|
||||
|
||||
# Todos los títulos
|
||||
libros = sopa.select('.product_pod')
|
||||
# Mostramos la página y el enlace
|
||||
print(f'\nNÚMERO DE PÁGINA: {PAGE}\nENLACE: {ENLACE}\nLIBROS:')
|
||||
|
||||
# Seleccionamos uno a uno cada libro
|
||||
for libro in libros:
|
||||
|
||||
# Seleccionamos los libros que tengan 4 o 5 estrellas
|
||||
if libro.select('.star-rating.Four') or libro.select('.star-rating.Five'):
|
||||
|
||||
# Seleccionamos el texto del title del elemento
|
||||
titulo_libro = libro.select('a')[1]['title']
|
||||
|
||||
# Mostramos el libro
|
||||
print(f'\t- \"{titulo_libro}\"')
|
||||
# Si no existe la url
|
||||
else:
|
||||
print("")
|
||||
FIN_URL = False
|
Loading…
Reference in New Issue
Block a user