Script error en mode auto
Script error en mode auto
Bonjour,
Tout d'abord, un grand bravo pour ton programme.
J'ai commencé il y a deux jours et j'ai catalogué 1000 DVD.
J'ai utilise la méthode automatique : mode sans confirmation.
J'ai utilisé le Script sur AlloCine.fr.
J'ai eu des erreurs de scripts et des "access violation" si le nom du film comportait une erreur.
Par exemple, si on recherche sur NANNY MCPHEE2
Le script s'arrête à la ligne 199
//------------------------------------------------------------------------------
// TROUVE LE BON RESULTAT
//------------------------------------------------------------------------------
function trouveResultat(title : String) : String;
var
oK, couple, titre, adresse : String;
begin
for i:=0 to listeResultat.Count-1 do
Si on corrige NANNY MCPHEE 2, alors, il n'y a pas d'erreur.
Si on recherche en mode 1 , alors, il y a un message "no movie found" et le script ne se plante pas.
Je signale cette erreur, car il n'est pas possible de lancer le mode Auto, car le script est souvent arrêter et donc l'importation s'arrête.
Il serait intéressant de capturer l'erreur sur le numéro de film pour pouvoir le faire en manuel et de passer au suivant
Ensuite, j'aimerai utiliser Pocket AMC Reader, mais il n'importe pas tout les film et se bloque après +/- 150 importations.
J'ai un message qui me demande de vérifier l'encodage des caractères.
Il est très difficile de vérifier cela, car l'importation ne semble pas avoir suivit un ordre logique.
Est-il possible de vérifier cela dans un pgm ou existe t'il un autre pgm pour Android ?
Je peux fournir mon fichier XML.
En te remerciant
Eric
Tout d'abord, un grand bravo pour ton programme.
J'ai commencé il y a deux jours et j'ai catalogué 1000 DVD.
J'ai utilise la méthode automatique : mode sans confirmation.
J'ai utilisé le Script sur AlloCine.fr.
J'ai eu des erreurs de scripts et des "access violation" si le nom du film comportait une erreur.
Par exemple, si on recherche sur NANNY MCPHEE2
Le script s'arrête à la ligne 199
//------------------------------------------------------------------------------
// TROUVE LE BON RESULTAT
//------------------------------------------------------------------------------
function trouveResultat(title : String) : String;
var
oK, couple, titre, adresse : String;
begin
for i:=0 to listeResultat.Count-1 do
Si on corrige NANNY MCPHEE 2, alors, il n'y a pas d'erreur.
Si on recherche en mode 1 , alors, il y a un message "no movie found" et le script ne se plante pas.
Je signale cette erreur, car il n'est pas possible de lancer le mode Auto, car le script est souvent arrêter et donc l'importation s'arrête.
Il serait intéressant de capturer l'erreur sur le numéro de film pour pouvoir le faire en manuel et de passer au suivant
Ensuite, j'aimerai utiliser Pocket AMC Reader, mais il n'importe pas tout les film et se bloque après +/- 150 importations.
J'ai un message qui me demande de vérifier l'encodage des caractères.
Il est très difficile de vérifier cela, car l'importation ne semble pas avoir suivit un ordre logique.
Est-il possible de vérifier cela dans un pgm ou existe t'il un autre pgm pour Android ?
Je peux fournir mon fichier XML.
En te remerciant
Eric
-
- Posts: 863
- Joined: 2006-08-31 23:58:18
Bonjour esa
Le message s'adressait plutôt à Antoine, mais je vais répondre quand même ...
Bon désolé, mais j'vais commencer par faire mon grincheux ... ... ... en te faisant remarquer que tes questions ne se trouvent pas aux bons endroits.
La Section Bug reports sert a signaler les éventuels erreurs dans le programme Ant Movie Catalog.
Hors ta première question concerne un script. Il aurait été judicieux de poser ta question dans la Section Scripts et puisqu'il s'agit d'un script en particulier dans le Topic qui lui est consacré.
Ta deuxième question concerne un prog développé par un tiers (elman) dont le fil de discussion se trouve dans un topic dédié dans la section Mods.
Voilà, maintenant j'vais passer pour le "chieur" de service ... ... mais si je dis ça, c'est juste pour que le forum reste clair, accessible et que les personnes qui rencontreraient les même problèmes puissent trouver une éventuelle solution rapidement et sans se prendre la tête.
Ok ok, je retourne à Utopia Land ...
Bon sérieusement, concernant ta première question, je vais jetter un oeil dessus demain.
Cela me serait utile pour débugger le bouzin, si tu pouvais me donner d'autres exemples que Nanny McPhee.
Pour ta deuxième question, ben je ne sais pas. Sinon sur le topic dédié on peut lire ça de la part de l'auteur du programme.
Le message s'adressait plutôt à Antoine, mais je vais répondre quand même ...
Bon désolé, mais j'vais commencer par faire mon grincheux ... ... ... en te faisant remarquer que tes questions ne se trouvent pas aux bons endroits.
La Section Bug reports sert a signaler les éventuels erreurs dans le programme Ant Movie Catalog.
Hors ta première question concerne un script. Il aurait été judicieux de poser ta question dans la Section Scripts et puisqu'il s'agit d'un script en particulier dans le Topic qui lui est consacré.
Ta deuxième question concerne un prog développé par un tiers (elman) dont le fil de discussion se trouve dans un topic dédié dans la section Mods.
Voilà, maintenant j'vais passer pour le "chieur" de service ... ... mais si je dis ça, c'est juste pour que le forum reste clair, accessible et que les personnes qui rencontreraient les même problèmes puissent trouver une éventuelle solution rapidement et sans se prendre la tête.
Ok ok, je retourne à Utopia Land ...
Bon sérieusement, concernant ta première question, je vais jetter un oeil dessus demain.
Donc tu avais déjà une liste de films déjà prête ... elle sort d'où, si c'est pas indiscret.esa wrote: J'ai commencé il y a deux jours et j'ai catalogué 1000 DVD.
J'ai utilise la méthode automatique : mode sans confirmation.
esa wrote:J'ai eu des erreurs de scripts et des "access violation" si le nom du film comportait une erreur.
Cela me serait utile pour débugger le bouzin, si tu pouvais me donner d'autres exemples que Nanny McPhee.
C'est ce que le script est censé faire en mode 0, il doit normalement décocher la fiche qu'il ne trouve pas et passer à la suivante ... comme déjà dit je regarderais demain pourquoi ça foire.esa wrote:Il serait intéressant de capturer l'erreur sur le numéro de film pour pouvoir le faire en manuel et de passer au suivant
Pour ta deuxième question, ben je ne sais pas. Sinon sur le topic dédié on peut lire ça de la part de l'auteur du programme.
et dans les bugs connus on peut lire :elman wrote:History
09.01.2011 Version 1.3.1
- ADDED More code pages (catalog encodings) to choose from
- FIXED Crashing with some non standard characters in catalog. However import is canceled, so catalog needs to be fixed manually in Ant Movie Catalog. Read error message for more information
@+ moielman wrote:Known bugs
- Import crashes with some non standard characters. I'm not sure I can fix it since AMC produces not well formed XML
Bah tu as bien répondu (t'as bien fait, ça me facilite le boulot )Raoul_Volfoni wrote: Le message s'adressait plutôt à Antoine, mais je vais répondre quand même ...
Pour vérifier la validité du XML, l'ouvrir dans un navigateur web permet généralement de trouver l'erreur (Internet Explorer, Firefox, etc., parfois il faut essayer dans plusieurs)
En général ces erreurs sont dues à des caractères spéciaux genre guillemets spéciaux “ ” ou apostrophe ’ au lieu de simples " ' ou « », ou encore le symbole "..." collés en un seul caractère.
Un truc à essayer aussi est de changer le type du xml (tout au début du fichier, ou dans File -> Properties dans AMC) de iso-8859-1 en windows-1252, je ne sais pas si ça suffira pour l'application qui traitera le fichier ensuite, mais ça peut rendre ces caractères valides.
Merci pour les réponse rapide et sorry, pour le mauvais Topic.
Il se faisait tard, et je n'ai pas compris que tout était séparé dans l'application.
OK, pour le script, j'ai bien compris que cela ne regarde pas l'application en elle même.
De toute façon, ce n'est pas bien grave, puisque j'ai quand même pu finir le travail. Importation de donnée à partir d'un site => Je n'en demandais pas tant à une application.
C'est pour cela , que je tire encore mon chapeau.
Je peux te donner d'autre exemple, mais il suffit de rentrer un titre qui fonctionne et ensuite de rajouter qq chose à la fin comme un numéro bidon.
Pour L'export, j'ai un peu analysé ce qui se passe.
Le fichier d'export XML comprends des caractères spéciaux que j'ai trouvé exclusivement dans le champs Comments (donc importé du site Allociné).
En ouvrant le fichier XML avec NotePad++, on retrouve des caractères :
- DC3
- DC4
Ceci représente des caractères non "printable" entre 0x11 et 0x14
http://fr.wikipedia.org/wiki/ISO_8859-1
Je donne un exemple pour le film MAMMUTH que j'ai importé de Allociné:
"Depardieu se livre sans pudeurdans tous les sens du terme et donne à Mammuth son épaisseur humaine, parfois diluée dans une esthétique trash un poil gadget."
Ma question est la suivante : serrait-il possible d'exporter le fichier XML en zappant tout les caractère non "printable" ?
EDIT : J'ai continué les test et j'ai trouvé un WorkArround assez facile.
Il suffit d'exporter le fichier XML et ensuite de l'ouvrir avec Notepad++. Tout sélectionné. Toolbar=>TextFX Character=>ZAP all non printable to #
J'ai ensuite chargé XML dans Pocket AMC sans erreur.
Le mieux, serai d'éliminer ces caractères dans la DB de AMC (il n'y a aucune raison de garder ces caractères) sinon,il faut à chaque fois refaire cette opération de nettoyage.
Une autre question concernant l'export :
Comme l'importation dans Pocket AMC Reader prends beaucoup de temps, j'aimerai faire un XML en fonction d'un champs.
Par exemple, j'aimerai filtrer sur Source et faire un fichier XML pour ces films.
Est ce possible ? Je continue à chercher...
Merci
Eric
Il se faisait tard, et je n'ai pas compris que tout était séparé dans l'application.
OK, pour le script, j'ai bien compris que cela ne regarde pas l'application en elle même.
De toute façon, ce n'est pas bien grave, puisque j'ai quand même pu finir le travail. Importation de donnée à partir d'un site => Je n'en demandais pas tant à une application.
C'est pour cela , que je tire encore mon chapeau.
Je peux te donner d'autre exemple, mais il suffit de rentrer un titre qui fonctionne et ensuite de rajouter qq chose à la fin comme un numéro bidon.
Pour L'export, j'ai un peu analysé ce qui se passe.
Le fichier d'export XML comprends des caractères spéciaux que j'ai trouvé exclusivement dans le champs Comments (donc importé du site Allociné).
En ouvrant le fichier XML avec NotePad++, on retrouve des caractères :
- DC3
- DC4
Ceci représente des caractères non "printable" entre 0x11 et 0x14
http://fr.wikipedia.org/wiki/ISO_8859-1
Je donne un exemple pour le film MAMMUTH que j'ai importé de Allociné:
"Depardieu se livre sans pudeurdans tous les sens du terme et donne à Mammuth son épaisseur humaine, parfois diluée dans une esthétique trash un poil gadget."
Ma question est la suivante : serrait-il possible d'exporter le fichier XML en zappant tout les caractère non "printable" ?
EDIT : J'ai continué les test et j'ai trouvé un WorkArround assez facile.
Il suffit d'exporter le fichier XML et ensuite de l'ouvrir avec Notepad++. Tout sélectionné. Toolbar=>TextFX Character=>ZAP all non printable to #
J'ai ensuite chargé XML dans Pocket AMC sans erreur.
Le mieux, serai d'éliminer ces caractères dans la DB de AMC (il n'y a aucune raison de garder ces caractères) sinon,il faut à chaque fois refaire cette opération de nettoyage.
Une autre question concernant l'export :
Comme l'importation dans Pocket AMC Reader prends beaucoup de temps, j'aimerai faire un XML en fonction d'un champs.
Par exemple, j'aimerai filtrer sur Source et faire un fichier XML pour ces films.
Est ce possible ? Je continue à chercher...
Merci
Eric
Ah oui j'oubliais ce bugesa wrote: Ceci représente des caractères non "printable" entre 0x11 et 0x14
Ça sera corrigé dans la prochaine mise à jour de l'exe mais en attendant c'est les scripts qui doivent éventuellement le gérer
Dans ce cas-ci c'est parce qu'il gère mal le fait que c'est un caractère unicode — (#8212)
Il prend le caractère correspondant à la valeur située entre 0 et 255, mais ici ça dépasse un peu
Ces caractères sont à corriger dans le catalogue, normalement via un script il y aurait moyen de les remplacer dans tous les commentaires :
Code: Select all
program NewScript
var
s: string;
begin
s := GetField(fieldComments);
s := StringReplace(s, #11, '-');
s := StringReplace(s, #14, '-');
SetField(fieldComments, s);
end.
-
- Posts: 863
- Joined: 2006-08-31 23:58:18
@ esa
Va voir de ce côté pour une mise à jour du script Allociné.
@ antp
Après un arrachage de cheveux intensif, j'ai découvert que la valeur #20 marchait pour faire un StringReplace ...
Va voir de ce côté pour une mise à jour du script Allociné.
@ antp
esa n'avait pas tout à fait tord de poser sa deuxième question dans cette section finalement ...antp wrote:Ça sera corrigé dans la prochaine mise à jour de l'exe .../...
Un StringReplace sur les caractères #11 et #14 n'a aucun effet sur le caractère "bizzare" présent dans les commentaires de la fiche du film "Mammuth".antp wrote: .../... mais en attendant c'est les scripts qui doivent éventuellement le gérer
Après un arrachage de cheveux intensif, j'ai découvert que la valeur #20 marchait pour faire un StringReplace ...
Il faut le faire après le HTMLDecode (au cas où), il me semble qu'un autre script utilisait déjà ça pour corriger un problème qui arrivait avec certains caractères.
Ou alors remplacer &# 8212; (sans espace) par un simple tiret avant le HTMLDecode.
Quand je disais que ça sera corrigé, en fait le bug est corrigé depuis longtemps dans la version "en développement" sur mon PC mais comme je n'ai toujours pas fini cette version depuis des années...
Ou alors remplacer &# 8212; (sans espace) par un simple tiret avant le HTMLDecode.
Quand je disais que ça sera corrigé, en fait le bug est corrigé depuis longtemps dans la version "en développement" sur mon PC mais comme je n'ai toujours pas fini cette version depuis des années...
-
- Posts: 863
- Joined: 2006-08-31 23:58:18
C'est ce que j'ai essayé de faire sur l'exemple donner par esa sur le film Mammuth. Mais ça ne marche pas avec un StringReplace sur les valeurs #11 ou #14, mais sur la valeur #20.antp wrote:Il faut le faire après le HTMLDecode (au cas où) .../...
Alors là je vais passer mon tour ...antp wrote:Ou alors remplacer &# 8212; (sans espace) par un simple tiret avant le HTMLDecode.
Tout le script Allociné (et la plupart des scripts de ScorEpioN), utilise la fonction findInfo du "ScorEpioNCommonScript.pas" pour récupérer des valeurs dans une chaine. Hors la valeur renvoyée par cette fonction est déjà "HTMLDecodé"
ScorEpioN avait prévu, dans une de ces options de sa fonction findInfo, de remplacer un caractère "gênant", seulement manque de bol c'est sur le caractère &# 8211; ...
Il faudrait que je change le "ScorEpioNCommonScript.pas" pour ça, mais je m'y suis toujours refusé.
Ou alors faire une fonction findInfo2 au sein même du script, mais cela l'alourdirait inutilement et il n'a vraiment pas besoin de ça !!
Ou encore prélever de manière brut la chaine qui nous intéresse, faire un replace du caractère et enfin appliquer le findInfo ...
Les solutions ne manquent pas, mais le temps oui ... vu la longueur du script, je ne vais pas me lancer dans l'aventure maintenant ...
Je crois que personne ici ne désespère de voir arriver un jour cette version ...antp wrote:Quand je disais que ça sera corrigé, en fait le bug est corrigé depuis longtemps dans la version "en développement" sur mon PC mais comme je n'ai toujours pas fini cette version depuis des années...
Regarde "Duke Nukem Forever" ... pratiquement 14 années de "développement" ... t'as encore de la marge
Bah pourquoi pas, au moins ça résoudrait le problème de manière déjà un peu plus globale...Raoul_Volfoni wrote: ScorEpioN avait prévu, dans une de ces options de sa fonction findInfo, de remplacer un caractère "gênant", seulement manque de bol c'est sur le caractère &# 8211; ...
Il faudrait que je change le "ScorEpioNCommonScript.pas" pour ça, mais je m'y suis toujours refusé.
-
- Posts: 863
- Joined: 2006-08-31 23:58:18
Ben justement, c'est bien pour ça que je me suis toujours interdit de changer le "ScorEpioNCommonScript.pas" . Parce que si j'me plante, cela n'impactera pas uniquement le script Allociné, mais tous les autres scripts qui fonctionnent avec ... ... et y en a un paquet ...antp wrote:Bah pourquoi pas, au moins ça résoudrait le problème de manière déjà un peu plus globale...
Évidemment dans ce cas précis, je ne risque pas grand chose à rajouter un StringReplace ...
Seulement ça pose un autre problème (je sais j'me fais une montagne d'un rien ), c'est qu'il faut que tous les utilisateurs mettent à jour le fichier ...
Alors oui, je pourrais faire un process automatique comme tu avais fait pour le StringUtils1 ... mais non ... enfin pas tout de suite, j'vais laisser passer ma semaine de vacances à venir et je verrais au retour ...
oui il ne faut pas faire ça avait tes vacances, sinon au lieu de te détendre tu vas passer ton temps à te demander si tu n'as pas laissé un bug
Si c'est juste pour rajouter un StringReplace là où il y en avait déjà un, il n'y a pas de risque : tu vois direct si ça marche ou pas.
Et ceux qui ont encore le vieux fichier ça ne leur pose pas trop de problème : ils ne bénéficieront simplement pas de cette modif, qui n'est utile que dans de rares cas semble-t-il.
Si c'est juste pour rajouter un StringReplace là où il y en avait déjà un, il n'y a pas de risque : tu vois direct si ça marche ou pas.
Et ceux qui ont encore le vieux fichier ça ne leur pose pas trop de problème : ils ne bénéficieront simplement pas de cette modif, qui n'est utile que dans de rares cas semble-t-il.