Aller au contenu

catalogue XML fourni par affilieur


Baobab

Sujets conseillés

Bonsoir à tous,

Je souhaite intégrer dans une BD MySQL de mon site plusieurs catalogues d'affilieurs. Beaucoup de régie proposent maintenant des catalogues XML, en plus des fichiers .CSV.

Avec un format .CSV, il est facile d'extraire certains produits d'un catalogue (afin de ne pas intégrer sur le site tous les produits d'un même catalogue), et de télécharger ce catalogue "réduit" dans une BD. Le gros inconvénient est que la mise à jour des produits (prix notamment) doit se faire manuellement, sans que l'affilieur ne vous informe que ses prix ont changé.

Avec un format XML, j'ai cru comprendre que la mise à jour pouvait s'automatiser, donc bcp plus intéressant que le CSV.

Je me pose donc les questions suivantes :

- comment ne garder que certains produits dans un catalogue XML fourni par un affilieur ? (et aussi scinder un catalogue XML en plusieurs sous-catalogues car le temps de téléchargement d'un catalogue complet est trop long, et incompatible avec la durée max d'exécution d'un script imposée par mon hébergeur).

- quel mécanisme dois-je prévoir pour la mise à jour des produits ? Est ce que je dois faire tourner périodiquement le script de téléchargement de ma BD avec tous les catalogues XML de mes affilieurs afin de mettre à jour les données des produits ?

Je suis preneur de toute info sur l'exploitation de ces catalogues XML. Et si qq'un connait une régie disposant d'un outil pour "préparer" en ligne son propre catalogue XML (en enlevant les produits non désirés), je suis preneur aussi :rolleyes:

Merci d'avance.

Lien vers le commentaire
Partager sur d’autres sites

Personnellement, je retélécharge et je reparcours tous les enregistrements, pour mettre à jour les infos.

J'ai plusieurs scripts en crontab, qui se lancent une fois par semaine :

- Le premier télécharge un zip, et le décompresse dans un répertoire (C'est un script bash, je n'y connais malheureusement rien)

- Le second, un script PHP, analyse chacun des fichiers un par un, ajoute les infos ou les met à jour en fonction du besoin, et se relance après coup jusqu'à ce qu'il ait fini.

Lien vers le commentaire
Partager sur d’autres sites

Hello,

Pour information, tu peux également très bien traiter à la volé et donc automatiser tout le process avec du csv.

Le traitement du XML sous PHP5 est un vrai bonheur, tu ne devrais pas rencontrer trop de problème.

Lien vers le commentaire
Partager sur d’autres sites

Salut,

Perso je déclenche par une tache cron un script php qui lit les fichiers XML ou CSV des régies d'affiliation et qui charge ma base de données. Et c'est tout :smartass: Pour le CSV et le XML avec PHP2, c'est super simple, il y a des fonctions toutes faites pour çà.

Lien vers le commentaire
Partager sur d’autres sites

  • 7 months later...

Bonjour,

Je viens de m'inscrire pour une affiliation.

ON m'a donné un fichier xml à télécharger (et aussi un csv).

Comment dois je m'y prendre pour l'utiliser et intégrer les données dans mon site?

POuvez vous m'expliquer l'ensemble des choses à faire parce que je suis un peu perdu, là?

Merci beaucoup et bonne journée !

Mac

Lien vers le commentaire
Partager sur d’autres sites

Il va te falloir :

- Télécharger le fichier régulièrement, pour avoir les mises à jour

- Parcourir ce fichier via ton langage de programmation (Si tu utilises PHP5, simplexml_load_file() est parfait pour le fichier XML, par exemple)

- Choisir les éléments du fichier que tu veux voir intégrés dans ta base de données

- Les ajouter (ou les mettre à jour) dans ta base

- Les afficher sur ton site

Lien vers le commentaire
Partager sur d’autres sites

Il va te falloir :

- Télécharger le fichier régulièrement, pour avoir les mises à jour

ca se met pas à jour tout seul?

Ben c'est quoi l'intérêt alors?

- Parcourir ce fichier via ton langage de programmation (Si tu utilises PHP5, simplexml_load_file() est parfait pour le fichier XML, par exemple)

je vais mater ton lien, merci :smartass:

- Choisir les éléments du fichier que tu veux voir intégrés dans ta base de données

ça, c'est dans le fichier xml que je le vois? mais il y a plein de caractères que je ne connait pas dans ce fichier, du type :ррррm (ça s'affiche pas pareil ici, je ferai un imprim ecran)

- Les ajouter (ou les mettre à jour) dans ta base

tu veux dire que je dois créer une bdd, mais je dois mettre quoi dedans, j'ai jamais créé ça moi :nonono:

- Les afficher sur ton site

Donc si je suis ton raisonnement, sur mon site, c'est ma base de données que j'appelle en fait et pas le xml???

Merci pour ton aide ! :smartass:

Lien vers le commentaire
Partager sur d’autres sites

Théoriquement, le fichier sur le site du fournisseur est tout le temps à jour. Mais tu ne peux pas te permettre de le retélécharger et de l'analyser à chaque affichage de la page, c'est trop long.

Par contre, la tâche est relativement complexe pour un débutant. Tu ne te serais pas attaqué à trop gros ?

Lien vers le commentaire
Partager sur d’autres sites

Ben le souci, c'est que c'est une demande de mon boss, alors pas trop le choix :whistling:

je vais essayer de faire les choses dans l'ordre que tu me donnes et voir ce que ça donne, mais j'aurais sûremet pleins de questions à venir poser, sans vouloir trop vous embêter...

Merci de ta gentillesse!

Lien vers le commentaire
Partager sur d’autres sites

  • 1 year later...

Salut,

Perso je déclenche par une tache cron un script php qui lit les fichiers XML ou CSV des régies d'affiliation et qui charge ma base de données. Et c'est tout :smartass: Pour le CSV et le XML avec PHP2, c'est super simple, il y a des fonctions toutes faites pour çà.

Salut,

Après bcp de temps passé à créer un script php de mise à jour de catalogue xml, tjrs pas de résultat satisfaisant :( Ca marchote mais ca manque de fiabilité et en plus le script est bcp trop long pour mon hébergement mutualisé. Tout doit donc être revu.

Est ce que tu aurais un exemple concret de script qui fonctionne bien pour les fichiers xml fournis par Netaffiliation, Zanox, Affilinet ou Effiliation ?

Le seul aspect qui fonctionne c'est le déclenchement du script par tache cron. Pas glorieux...

Merci d'avance

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...