[Resolu] Webgadget sauvegarde texte et image

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
fd
Messages : 70
Inscription : mar. 15/mars/2005 21:41
Localisation : Savoie

[Resolu] Webgadget sauvegarde texte et image

Message par fd »

Bonjour,

Je souhaite me connecter à une base de livres pour compléter une base de données représenant ma bibliothèque (titre / auteur / edition / pages ... + image de la couverture). Après quelques essais avec aws, je n'arrive pas à créer la signature en sha256 avec pb. Je pense donc récupérer sur le site la texte de la page web (programme de Pille) et l'image avec COMate et le javacript : mais je n'arrive pas à forcer l'enregistrement (sauvegarde de l'image - save as du click droit). Voici mon code ... si l'un de vous a élaboré une autre méthode (ou a réussi à travailler avec aws) ... je suis prenneur de toutes les bonnes idées ... Merci.

Code : Tout sélectionner

XIncludeFile "COMate.pbi" 

Define.COMateObject WebObject 

Procedure.i ExecuteJavaScript(Gadget, command$) 
  Protected browser.COMateObject, documentDispatch.COMateObject, script.COMateObject 
  Protected result 
  browser = COMate_WrapCOMObject(GetWindowLong_(GadgetID(gadget), #GWL_USERDATA)) 
  If browser 
    documentDispatch = browser\GetObjectProperty("Document") 
    If documentDispatch 
      script = documentDispatch\GetObjectProperty("script") 
      If script 
        result = script\Invoke("eval('" + command$ + "')") 
        script\release() 
      EndIf  
      documentDispatch\Release() 
    EndIf 
    browser\Release() 
  EndIf 
  ProcedureReturn result 
EndProcedure 


If OpenWindow(0, 10,10,500,500, "WebGadget",  #PB_Window_SystemMenu) 
  WebGadget(0, 0, 0, WindowWidth(0)+50,WindowHeight(0)-100, "http://www.nicebooks.com/data/covers/large/0/0/3/5/9782253155300.jpg") 

  ButtonGadget(2,250,WindowHeight(0)-50,150,25,"Send") 
   
  Repeat 
    Event = WaitWindowEvent(); 
    Select Event 
      Case #PB_Event_Gadget 
        If EventGadget() = 2 
          ExecuteJavaScript(0,"document.execCommand('SaveAs', true, 'D:\\test.jpg)")
        EndIf 
      Case #PB_Event_CloseWindow 
        Break 
    EndSelect 
  Until GetAsyncKeyState_(#VK_ESCAPE) 
EndIf 
Dernière modification par fd le mer. 04/août/2010 6:11, modifié 1 fois.
Avatar de l’utilisateur
Ar-S
Messages : 9540
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: Webgadget sauvegarde texte et image

Message par Ar-S »

tu devrais te mettre à jour avec COMate Plus. il y a la version PB 4.50
Je découvre tout juste mais ça a l'air bien puissant !

Pour ton soucis je comprends pas trop.

Si tu veux sauver l'image et que tu as l'url, pourquoi ne pas utiliser un simple ReceiveHttpFile() ?

Code : Tout sélectionner

;haut de la page
initNetwork()

;(...) ton code

If EventGadget() = 2  
          
           If ReceiveHTTPFile("http://www.nicebooks.com/data/covers/large/0/0/3/5/9782253155300.jpg", "D:\test2.jpg")
            Debug "Succes"
          Else
            Debug "Erreur"
          EndIf
Dernière modification par Ar-S le mar. 03/août/2010 7:26, modifié 1 fois.
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
fd
Messages : 70
Inscription : mar. 15/mars/2005 21:41
Localisation : Savoie

Re: Webgadget sauvegarde texte et image

Message par fd »

Oui, en effet trop simple !

Je cherche depuis 2 jours entre comate et le javascript ... et je n'ai donc pas vu le beaucoup plus simple !

Merci, bonne fin de soirée
Avatar de l’utilisateur
Ar-S
Messages : 9540
Inscription : dim. 09/oct./2005 16:51
Contact :

Re: Webgadget sauvegarde texte et image

Message par Ar-S »

Petite modif : D:\ pas D:/

Ajoute un petit [resolu] devant ton sujet ;)
~~~~Règles du forum ~~~~
⋅.˳˳.⋅ॱ˙˙ॱ⋅.˳Ar-S ˳.⋅ॱ˙˙ॱ⋅.˳˳.⋅
W11x64 PB 6.x
Section HORS SUJET : ICI
LDV MULTIMEDIA : Dépannage informatique & mes Logiciels PB
UPLOAD D'IMAGES : Uploader des images de vos logiciels
Répondre