import requests
from requests.compat import urljoin
from bs4 import BeautifulSoup
base_url = "https://books.toscrape.com/"
titles = []
images = []
rates = []
prices = []
# Solution
response = requests.get(base_url)
soup = BeautifulSoup(response.content, 'html.parser')
articles = soup.find_all("article", {"class":"product_pod"})
for article in articles:
image = urljoin(base_url,
article.find("div", {"class":"image_container"}).a.img['src'])
rate = article.find("p", {"class":"star-rating"})['class'][1]
title = article.find("h3").a['title']
price = article.find("div", {"class":"product_price"}).p.string
titles.append(title)
images.append(image)
rates.append(rate)
prices.append(price)
print("Length of scraped titles: ", len(titles))
print("Length of scraped images: ", len(images))
print("Length of scraped rates: ", len(rates))
print("Length of scraped prices: ", len(prices))
print(titles)