[FR] script "Monsieur Cinéma + affiche Cinéfil" v4

If you made a script you can offer it to the others here, or ask help to improve it. You can also report here bugs & problems with existing scripts.
Guest

Post by Guest »

@scorpion7552: merci beaucoup pour ton aide. A présent ça marche parfaitement! ;)

Le logiciel est génial, apparemment plusieurs personnes collaborent dans la joie et l'allégresse...et tout cela sans considération mercantile... Moi je dis bravo!!! :)

Si ça peut vous servir, ou en tout cas vous faire plaisir, je suis prêt à vous faire de la pub sur les différents forums que je fréquente.
Brianos

Post by Brianos »

Hump, c'était moi au-dessus... :D
antp
Site Admin
Posts: 9651
Joined: 2002-05-30 10:13:07
Location: Brussels
Contact:

Post by antp »

scorpion7552 wrote: + UrlEncode2 modifié (si tu voit quelque chose)
je vois pas trop quoi modifier... si tu constates certains caractères qui manquent dans un premier temps le mieux c'est de les convertir avec StringReplace après un passage dans UrlEncode ;)
RiRi51

Post by RiRi51 »

bonjour,
je m'interesse moi aussi à ce script et aux pages "Histoire", "Générique",...

je pense que j'arrive trop tard :??: mais voici ce qu'en pense une de mes connaissances :

"J'ai essayé de poster la page avec différentes valeurs de __EVENTTARGET et __EVENTARGUMENT sans succès.
Puis je me suis rendu compte qu'il y avait un autre champ caché dans le
formulaire : __VIEWSTATE. Cette variable est le noeud de ton problème. Cette variable est une variable de session qui t'identifie de manière unique : tu es venu sur la page principale, cette variable t'es affectée pour caractériser ta session et t'identifie quand tu demandes à voir l'histoire. Tu peux essayer de la passer en paramètre __VIEWSTATE=dDwx...pjs mais cela fait planter leur serveur IIS."

Autre remarque :
on arrive à atteindre la page "Donnez votre avis" ou "Avis des spectateurs" (les premiers onglets) par la méthode GET (dans un script Ant Movie Catalog) ou par IE :
http://cinema.tiscali.fr/fichefilm.aspx ... rip1:_ctl3

Donc êtes-vous sûr que le pb viens bien de la méthode POST ?

dites moi si je suis complètement à côté de la plaque... :/
scorpion7552
Posts: 182
Joined: 2004-02-05 11:57:33
Location: Paris, France

Post by scorpion7552 »

RiRi51 tu as parfaitement raison. Le problème c'est que __VIEWSTATE contient des caractères qu'il faut 'urlencoder' (notamment le +) et que l'appel à UrlEncode ne modifie pas ces caractères et c'est ce qui fait planter le serveur. J'ai essayé très rapidement le conseil d'antp (conversion des caractères après UrlEncode) mais pour l'instant le résultat n'est pas fameux. J'espère avoir un peu de temps ce week-end pour voir ça de plus près. Je vous tiendrai au courant des résultats

Un dernier mot, je sais bien qu'on peut récupérer les pages 'donner votre avis' et 'avis des spectateurs' mais en fait, on n'en a rien à faire :hihi:

Allez, à plus everybody...
scorpion7552
Posts: 182
Joined: 2004-02-05 11:57:33
Location: Paris, France

Post by scorpion7552 »

antp wrote:Et au sujet des ":" et "+", en effet ils ne sont pas encodés, et je ne sais pas pourquoi ils ne le font pas :

Code: Select all

UnsafeChars = ['*', '#', '%', '<', '>', ' ','[',']']
Seuls ces caractères-là et ceux qui sont hors du range 33..128 sont encodés.
@antp
ben oui, c'est bien ça le problème puisque + et : sont dans le range 33...128

de plus, il n'y a pas besoin d'appeler UrlEncode avant PostPage puisque c'est fait automatiquement

donc je ne peux pas transformer ces 2 caractères (si j'ajoute %, il va me coder %252B ou %253A bien sûr (UnsafeChars))

pour que ça marche, il faudrait que + soit transformé en %2B et : en %3A
sans qu'UrlEncode m'en rajoute.... et là je suis sec :cry:

la solution serait peut-être (si ça a un sens) que PostPage n'appelle pas UrlEncode, charge au programmeur de faire ce qu'il faut avant d'appeller PostPage

T'en dis quoi
:??:
antp
Site Admin
Posts: 9651
Joined: 2002-05-30 10:13:07
Location: Brussels
Contact:

Post by antp »

Je ne savais pas que Postpage faisait l'encodage tout seul :D
Il y a une option pour forcer l'encodage des paramètres que j'avais activée il y a longtemps.
J'ai recompilé une version où cette option est désactivée pour que tu puisses tester l'encodage manuel avec URLEncode + StringReplace.
ftp://ftp2.antp.be/antp/temp/amc343.zip
En observant le code d'Indy, je vois que les paramètres que je passe sous forme d'une TStringList sont ensuite transformés en une chaîne où les éléments sont séparés par des "&".
Donc il faut séparer les paramètres par des retour à la ligne et non par des "&", au cas où ça n'aurait pas été dit...
scorpion7552
Posts: 182
Joined: 2004-02-05 11:57:33
Location: Paris, France

Post by scorpion7552 »

Antoine, t'es trop fort

CA MARCHE :grinking: :grinking: :grinking: :grinking:

(par contre, il ne faut pas que je sépare les paramètres par crlf mais que je garde le & )

Bon pour ce soir c'est tout pour moi. Je vais donc pouvoir continuer les modifications du script. Tiens-moi (nous) au courant si dans la nouvelle version de amc que tu ne tarderas pas à mettre en ligne il faut utiliser PostPage ou un PostPage2 ...

En tout cas, encore un pas de plus vers la perfection...

Bonne nuit à tous et à très bientôt :wink:
RiRi51

Post by RiRi51 »

Bravo à vous deux (scorpion7552 et antp) !!
Et moi qui commençais à croire qu'il n'y avait pas de solution !

scorpion7552 tu comptes modifier ton script rapidement ? sinon peux-tu m'expliquer comment faire ? il faut juste utiliser PostPage2 de cette version d'AMC :

ftp://ftp2.antp.be/antp/temp/amc343.zip

c'est çà ?

Merci pour ta réponse et encore bravo !
antp
Site Admin
Posts: 9651
Joined: 2002-05-30 10:13:07
Location: Brussels
Contact:

Post by antp »

Dans la 3.4.3 ça restera Postpage, comme c'est le cas dans cette version modifiée.
Je modifierai les quelques rares scripts utilisant postpage pour que dans cette version ils encodent les params avant de les envoyer (comme c'est écrit dans la doc en fait...)

Dans la 3.5 il y aura une Postpage2 où un paramètre permettra de dire si on veut utiliser l'encodage automatique ou non.
scorpion7552
Posts: 182
Joined: 2004-02-05 11:57:33
Location: Paris, France

Post by scorpion7552 »

RiRi51 wrote:Bravo à vous deux (scorpion7552 et antp) !!
Et moi qui commençais à croire qu'il n'y avait pas de solution !

scorpion7552 tu comptes modifier ton script rapidement ? sinon peux-tu m'expliquer comment faire ? il faut juste utiliser PostPage2 de cette version d'AMC :

ftp://ftp2.antp.be/antp/temp/amc343.zip

c'est çà ?

Merci pour ta réponse et encore bravo !
la modif devrait être faite d'ici un jour ou deux. En fait, il ne s'agit pas de remplacer postpage (qui n'existe pas dans la version actuelle du script) mais plutot de l'utiliser pour récupérer les autres pages et en extraire les infos; maintenant que le problème de postpage est réglé ça va être très simple.

Donc dans l'ordre
- je fais la modif dans mon coin
- antp met à disposition la version d'amc modifiée
- je publie la version 4 du script (dans un nouveau post) et tout le monde il est content :)
antp
Site Admin
Posts: 9651
Joined: 2002-05-30 10:13:07
Location: Brussels
Contact:

Post by antp »

scorpion7552 wrote: - antp met à disposition la version d'amc modifiée
elle l'est, en version "temporaire" :D
scorpion7552 wrote: - je publie la version 4 du script (dans un nouveau post) et tout le monde il est content :)
À la limite tu peux le fournir dans ce topic-ci, en spécifiant que tant que le script n'est pas inclus officiellement avec le soft il faut remplacer l'exe.
Le jour où je mettrai à jour l'install du soft pour prendre les nouveaux scripts je mettrai en même temps le nouvel exe dans l'install.
scorpion7552
Posts: 182
Joined: 2004-02-05 11:57:33
Location: Paris, France

Post by scorpion7552 »

Réjouissez-vous dans les chaumières francophones: la version 4 du script est enfin disponible :)

la version 4 a été remplacée par une nouvelle version: voir 1er post de ce topic
Last edited by scorpion7552 on 2004-11-26 09:58:14, edited 1 time in total.
RiRi51

Post by RiRi51 »

Merci encore scorpion7552 !

Juste un tout tout tout petit problème : il semble qu'il y ait une erreur lors de la conversion UTF-8-->ASCII, la chaine ' - ' est remplacé par ' '.

Exemple :
http://cinema.tiscali.fr/fichefilm.aspx ... &file=http
Page histoire : "...– Dépression oblige –..."

Peux-tu corriger cela stp ?

De plus, ta fonction FormatText est-elle vrt utile? J'ai fait 2 ou 3 tests rapides avec seulement UTF8ToAscii, et çà à l'air de suffir.

Pour l'instant, je ne voit pas d'autres erreurs..tant mieux!
scorpion7552
Posts: 182
Joined: 2004-02-05 11:57:33
Location: Paris, France

Post by scorpion7552 »

RiRi51 wrote:Merci encore scorpion7552 !

Juste un tout tout tout petit problème : il semble qu'il y ait une erreur lors de la conversion UTF-8-->ASCII, la chaine ' - ' est remplacé par ' '.

Exemple :
http://cinema.tiscali.fr/fichefilm.aspx ... &file=http
Page histoire : "...– Dépression oblige –..."

Peux-tu corriger cela stp ?

De plus, ta fonction FormatText est-elle vrt utile? J'ai fait 2 ou 3 tests rapides avec seulement UTF8ToAscii, et çà à l'air de suffir.

Pour l'instant, je ne voit pas d'autres erreurs..tant mieux!
Effectivement, il y a un problème de conversion UTF8--> ASCII (et c'est pas la seule: regarde le texte Soggy Bottom Boys, là encore, il manque un truc) en fait ça arrive lorsque l'encodage se fait sur 3 caractères (et la routine n'en traite que 2!!) ; faut que je vois ça de plus près, n'étant pas l'auteur de la fonction.
@antp: y a pas une fonction prévue en pascal object pour faire ça plus proprement ?

Quant à la fonction FormatText elle sert partout et permet un certain nombre de mises en pages (autres que UTF8-->ASCII) pas forcémment visibles sur toutes les pages (regarde les commentaires pour te faire une idée)

En tout cas, merci de tes commentaires :)

A+
antp
Site Admin
Posts: 9651
Joined: 2002-05-30 10:13:07
Location: Brussels
Contact:

Post by antp »

Si elle existe dans le moteur de script, elle s'appelle probablement UTF8Decode comme dans Delphi.
Sinon je la rajouterai dans la version 3.5
scorpion7552
Posts: 182
Joined: 2004-02-05 11:57:33
Location: Paris, France

Post by scorpion7552 »

antp wrote:Si elle existe dans le moteur de script, elle s'appelle probablement UTF8Decode comme dans Delphi.
Sinon je la rajouterai dans la version 3.5
dans Functions_str.pas, il y a 2 fonctions UTF8ListEncode et UTF8ListDecode qui font référence à UTF8Decode.

mais aucune de ces fonctions n'est accessible depuis le script (unkown identifier) :(
antp
Site Admin
Posts: 9651
Joined: 2002-05-30 10:13:07
Location: Brussels
Contact:

Post by antp »

Ça ce sont des fonctions que j'ai faites pour utiliser dans Ant Renamer.

UTF8Encode/Decode ce sont des fonctions de Delphi, c'est pour ça que je supposais qu'elles puissent exister aussi dans le moteur de script.
scorpion7552
Posts: 182
Joined: 2004-02-05 11:57:33
Location: Paris, France

Post by scorpion7552 »

antp wrote:Ça ce sont des fonctions que j'ai faites pour utiliser dans Ant Renamer.

UTF8Encode/Decode ce sont des fonctions de Delphi, c'est pour ça que je supposais qu'elles puissent exister aussi dans le moteur de script.
le 'unknown identifier' je l'ai aussi quand j'utilise UTF8Decode
scorpion7552
Posts: 182
Joined: 2004-02-05 11:57:33
Location: Paris, France

Post by scorpion7552 »

Alors Antoine,

Y a moyen d'avoir accès aux fonctions UTF8Decode (et UTF8Encode ?) depuis le script ou pas ??

:)
Post Reply