Oui parfaitement faisable, j'avais d'ailleurs écrit un petit script en Python pour un mec qui voulait scraper un peu LBC.
Tu as le principal ici, tu n'as plus qu'à programmer l'envoi de mails si un item correspond à tes critères et lancer le script toutes les deux minutes par exemple sur un serveur ou sur ton PC :
import json
import requests
from bs4 import BeautifulSoup
RECHERCHE = "mangas"
URL = f"https://www.leboncoin.fr/recherche?text={RECHERCHE}"
headers = {"User-Agent": "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:88.0) Gecko/20100101 Firefox/88.0"}
response = requests.get(URL, headers=headers)
response.raise_for_status()
soup = BeautifulSoup(response.text, "html.parser")
json_content = soup.find("script", {"type":"application/json"}).string
datas = json.loads(json_content)
items = datas["props"]["pageProps"]["listingData"]["ads"]
# On écrit les datas dans un fichier json (facultatif)
with open("datas_le_bon_coin.json", mode="w") as f:
json.dump(datas, f)
for item in items:
print("Titre:", item["subject"])
print("Lien:", item["url"])
try:
print("Prix:", item["price"][0], "€")
except:
print('Prix non indiqué')
print("Catégorie:", item["category_name"])
print("Mis en ligne:", item["first_publication_date"])
print(item["body"]) # Annonce
print('-' * 50)