Potresti fare così, però otterrà i risultati della sola prima pagina:
Python:
# SCRIPT PER RECUPERARE INFORMAZIONI SULLE CASE IN AFFITTO
import os
import sys
from os import name
from re import U
import requests
from bs4 import BeautifulSoup
city=input("Inserisci il nome della città: ") # INSERIRE NOME CITTÀ
city=city.lower() # CONVERTE LE LETTERE MAIUSCOLE IN MINUSCOLO
URL="https://www.immobiliare.it/affitto-case/" + city
A=input("La cerchi una casa in provincia? si/no: ")
if A == "si":
URL=URL + "-provincia"
elif A != "no":
sys.exit("Errore: Inserisci una delle seguenti opzioni: si/no")
URL=URL + "/?criterio=rilevanza"
resp = requests.get(URL)
#print(resp.status_code)
soup = BeautifulSoup(resp.text, "lxml")
via = soup.select('[class="in-card__title"]')
prezzo = soup.select('[class="nd-list__item in-feat__item in-feat__item--main in-realEstateListCard__features--main"]')
locali=soup.select('[class="in-feat__data"]')
metri=soup.select('[class="nd-list__item in-feat__item"][aria-label="superficie"]')
os.system("clear")
for i in range(len(via)):
print("Via:\t" ,via[i].text)
print("Prezzo:\t",prezzo[i].text)
print("Locali:\t",locali[i].text)
print("Metri:\t",metri[i].text)