Bonjour, je cherche à scrapper un listing provenant d’une carte sous Openstreetmap/Leaflet.
D’habitude j’utilise un logiciel pour scrapper mais la il ne me ressort rien.
Super!
Le fichier xml ne comprend que quelques données par contre les données au format json sont ultra complète. Il faut maintenant que je trouve comment extraire toutes les données en automatique et pas à la main.
Salut, voici la liste des id existants ici, classés par ordre croissant. Malheureusement ils ne débutent pas à 0 & ne s’incrémentent pas de 1 à chaque fois.
Tu as ici les liens url directement avec les id, ce sera plus simple à crawler que de tester à l’aveugle des id. (si tu entres un id invalide, tu reçois tout de même un code http 200 et par défaut, tu tombes sur l’id 57677).
Top!
Je cherche à faire un script pour sortir les infos mais j’ai une erreur. J’ai crée un fichier scraper.py avec ce code qui se trouve dans mon dossier téléchargement.
from bs4 import BeautifulSoup
import re
import pandas as pd
import requests
Charger le fichier CSV contenant les adresses HTML
Fonction pour extraire toutes les données encadrées par des guillemets doubles
def extract_all_data(url):
try:
response = requests.get(url)
if response.status_code == 200:
soup = BeautifulSoup(response.text, « html.parser »)
# Utiliser une expression régulière pour extraire toutes les données entre guillemets doubles
data_text = " « .join(soup.stripped_strings) # Convertir tout le texte en une seule chaîne
extracted_data = re.findall(r’ »([^« ]*) »', data_text)
return extracted_data
else:
return None
except Exception as e:
print(f"Erreur lors de l’extraction des données pour {url}: {e}")
return None
Appliquer la fonction extract_all_data à chaque URL dans la colonne « adresse » du DataFrame
Salut, je suis sur mon téléphone, je regarderai en détail plus tard sur ordinateur mais il semble que tu aies mal orthographié le nom du fichier. Ton fichier ne contient pas d’underscore (le fameux « tiret du bas ») dans son nom, mais il semble que dans ton code tu écrives Liste_JSON. Ensuite, dans le code, tu écris .csv alors qu’il me semble que le fichier n’est pas au format CSV (si tu utilises le fichier que j’ai hébergé, ce n’est pas un csv). Je regarderai plus en détail dans quelques heures, mais ce sont les premières pistes
Edit : le temps que j’écrive mon message tu as la réponse par Paul
Tiens, je te file ici une archive zip avec tous les fichiers json (il y en a 4641).
Si tu cherches à ne récupérer que certaines infos (par exemple seulement les adresses) je t’enverrai le script pour extraire les données que tu souhaites conserver & supprimer les autres.