FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  GroupesGroupes  Connexion  
Derniers sujets
» Panoramic et ses curiosités
par Jean Claude Aujourd'hui à 21:48

» Synedit Parameters
par Jean Claude Aujourd'hui à 21:15

» Utilitaire de suppression de fichiers
par Jean Claude Aujourd'hui à 21:11

» Code à vérifier SVP (Oups ! résolu)
par Jean Claude Hier à 21:16

» Compilateur FBPano
par jean_debord Hier à 9:56

» Bienvenue à Virtualalan !
par UltraVox Hier à 9:18

» Concours de Morpions
par jjn4 Hier à 0:04

» ShortName$(F) [Cloturé]
par papydall Mer 21 Juin 2017 - 16:19

» Remplacer espace par tiret dans noms des dossiers / fichiers
par papydall Mer 21 Juin 2017 - 15:27

» Menu personalisé avec icones et menu contextuel
par Laurent (Minibug) Mer 21 Juin 2017 - 12:44

» La liste des choses à faire ...
par Jack Mar 20 Juin 2017 - 22:49

» Quoi de neuf à propos de Goric 3D ? (@Jack)
par UltraVox Mar 20 Juin 2017 - 21:06

» Nom court et anti fenetre dos
par silverman Mar 20 Juin 2017 - 18:31

» Ludothèque Panoramic
par jjn4 Mar 20 Juin 2017 - 18:09

» Proposition à la communauté
par Yannick Mar 20 Juin 2017 - 15:02

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Juin 2017
LunMarMerJeuVenSamDim
   1234
567891011
12131415161718
19202122232425
2627282930  
CalendrierCalendrier

Partagez | 
 

 Recettes de cuisine

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
JL35



Nombre de messages : 5882
Localisation : 77
Date d'inscription : 29/11/2007

MessageSujet: Recettes de cuisine   Jeu 12 Mar 2015 - 17:27

Un programme pas vraiment fini, mais je crois que je vais en rester là, mon épouse s'en accommodera.

Rassurez-vous, ce n'est pas moi, ni le programme, qui invente les recettes, elles sont téléchargées sur un site qui s'appelle CuisineAZ, d'accès libre, anonyme, sans avoir besoin de s'inscrire ni de fournir ses coordonnées.
Les différents fichiers sont téléchargés en html, puis convertis au format texte par une sub assez rustique, qui serait sans doute très améliorable, mais au prix de beaucoup de complication, il y a tellement de particularités. C'est sans doute ça le point faible.

Le principe est de constituer la liste complète des recettes, et à partir de là on peut:
- afficher la liste complète à gauche
- cliquer sur une recette pour l'afficher à droite
- se connecter sur le site pour afficher directement la recette choisie (sous une forme plus sophistiquée, évidemment)
- ou faire une recherche dans la liste avec un ou des mots donnés, par exemple "pintade" qui donnera la liste des recettes correspondantes.

Je précise que c'est en pur Panoramic.
Code:
LABEL Exec,Dir,Vfic,Chargement,Convtxt,Liens,Vliens,Afrec,Cnx,Cherche
DIM url$,i%,j%,k%,cl%,r$,rtm$,sf$,l$,t$,nc%,vi$(50),vr$(50)
DIM f$,fr$,ft$,fll$,a$,b$,x%
r$ = "C:\MATERIEL\FINECOOK\RECETTES": ' <<<<<<<<<< CHEMIN À AJUSTER <<<<<<<<<<<
rtm$ = "C:\TEMP": '                                       IDEM
fll$ = r$+"Liste_liens.txt"
' Caractères spéciaux Html:
a$="&eacute;,é,&egrave;,è,&ecirc;,ê,&ucirc;,û,&agrave;,à,&Eacute;,É,&Agrave;,À,&rsquo;,',"
a$=a$+"&nbsp;, ,<,<,>,>,&amp;,&,","+CHR$(34)+","
a$=a$+"&raquo;,"+CHR$(13)+CHR$(10)+CHR$(187)+",&rsaquo;,>,&lsaquo;,<,"
a$=a$+CHR$(194)+CHR$(189)+",½,"+CHR$(194)+CHR$(208)+",°,"+CHR$(195)+CHR$(136)+",È,"
a$=a$+CHR$(195)+CHR$(137)+",É,"+CHR$(195)+CHR$(155)+",Û,"+CHR$(195)+CHR$(160)+",à,"
a$=a$+CHR$(194)+CHR$(171)+",«,"+CHR$(194)+CHR$(187)+",»,"+CHR$(195)+CHR$(167)+",ç,"
a$=a$+CHR$(195)+CHR$(162)+",â,"+CHR$(195)+CHR$(168)+",ê,"+CHR$(195)+CHR$(169)+",é,"
a$=a$+CHR$(195)+CHR$(170)+",ê,"+CHR$(195)+CHR$(174)+",ï,"+CHR$(195)+CHR$(175)+",ï,"
a$=a$+CHR$(195)+CHR$(180)+",ô,"+CHR$(195)+CHR$(187)+",û,"+CHR$(197)+CHR$(147)+",oe,"
a$=a$+CHR$(226)+CHR$(128)+CHR$(153)+",',"+CHR$(226)+CHR$(130)+CHR$(172)+",€,"
a$=a$+CHR$(226)+CHR$(128)+CHR$(147)+",-,"
a$=a$+"è,è,é,é,ë,ë,î,î,ô,ô,','"
k% = INSTR(a$,",")
WHILE k%>0
    nc% = nc%+1: vi$(nc%) = LEFT$(a$,k%-1): a$ = RIGHT_POS$(a$,k%+1): k% = INSTR(a$,",")
    IF k%=0 THEN vr$(nc%) = a$: EXIT_WHILE
    vr$(nc%) = LEFT$(a$,k%-1)
    a$ = RIGHT_POS$(a$,k%+1): k% = INSTR(a$,",")
END_WHILE

WIDTH 0,300: : HEIGHT 0,380: CAPTION 0,"   -   RECETTES   -"
COLOR 0,180,255,255
BUTTON 1: TOP 1,0: LEFT 1,10: CAPTION 1,"Télécharger"
BUTTON 2: TOP 2,TOP(1): LEFT 2,100: CAPTION 2,"Convertir en txt"
BUTTON 3: TOP 3,TOP(1): LEFT 3,200: CAPTION 3,"Extraire la liste"
BUTTON 4: TOP 4,TOP(1)+40: LEFT 4,LEFT(3): CAPTION 4,"Voir la liste"
FOR i% = 1 TO 4: ON_CLICK i%,Exec: NEXT i%

LIST 10: TOP 10,TOP(2)+30: LEFT 10,0: WIDTH 10,90: HEIGHT 10,HEIGHT(0)-90
ON_CLICK 10,Vfic
LIST 15: TOP 15,TOP(10): LEFT 15,WIDTH(10)+2: WIDTH 15,WIDTH(10): HEIGHT 15,HEIGHT(10)
ON_CLICK 15,Vfic
MEMO 11: HIDE 11: WIDTH 11,400
ALPHA 12: TOP 12,TOP(4)+40: LEFT 12,LEFT(4)
FONT_COLOR 12,255,64,64: FONT_SIZE 12,12: FONT_BOLD 12

ALPHA 16: TOP 16,HEIGHT(0)-54: LEFT 16,5: CAPTION 16,r$

FORM 20: HEIGHT 20,SCREEN_Y-50: WIDTH 20,800: HIDE 20: BORDER_SMALL 20
COLOR 20,180,255,255: CAPTION 20,"   -   LISTE   DES   RECETTES   -"
LIST 21: PARENT 21,20: TOP 21,25: WIDTH 21,350: HEIGHT 21,HEIGHT(20)-60: ON_CLICK 21,Afrec
DLIST 22
BUTTON 23: PARENT 23,20: LEFT 23,WIDTH(21)+120: WIDTH 23,180: HIDE 23
CAPTION 23,"Voir la recette en ligne": ON_CLICK 23,Cnx
MEMO 24: PARENT 24,20: TOP 24,25: LEFT 24,WIDTH(21): WIDTH 24,WIDTH(20)-WIDTH(21)-16
HEIGHT 24,HEIGHT(21)-25: FONT_NAME 24,"Arial": FONT_SIZE 24,10
ALPHA 26: PARENT 26,20: TOP 26,5: FONT_BOLD 26: CAPTION 26,"Chercher:"
EDIT 27: PARENT 27,20: LEFT 27,60: WIDTH 27,240
BUTTON 28: PARENT 28,20: LEFT 28,LEFT(27)+WIDTH(27): WIDTH 28,50: CAPTION 28,"OK"
ON_CLICK 28,Cherche

IF FILE_EXISTS(r$+"Recettes01.htm")=1 THEN sf$="htm": GOSUB Dir
IF FILE_EXISTS(r$+"Recettes01.txt")=1 THEN sf$="txt": GOSUB Dir
END
' ==============================================================================
Exec:
i% = NUMBER_CLICK
SELECT i%
    CASE 1: GOSUB Chargement
    CASE 2: GOSUB Convtxt
    CASE 3: GOSUB Liens
    CASE 4: GOSUB Vliens
END_SELECT
RETURN
' ==============================================================================
Vfic:
j% = 10: IF sf$ = "txt" THEN j% = 15
a$ = r$+ITEM_INDEX$(j%)
EXECUTE_WAIT "Notepad.exe "+a$
RETURN
' ==============================================================================
Dir:
EXECUTE_WAIT "Cmd.exe /c DIR /B "+r$+"*."+sf$+" | clip"
j% = 10: IF sf$ = "txt" THEN j% = 15
CLEAR j%: CLEAR 11: CLIPBOARD_PASTE 11
FOR i% = 1 TO COUNT(11): ITEM_ADD j%,ITEM_READ$(11,i%): NEXT i%
RETURN
' ==============================================================================
Chargement:
CAPTION 12,"En cours..."
' chargement initial
url$ = "http://www.cuisineaz.com/recettes/recherche_v2.aspx?recherche=autocuiseur"
WebLoadFic(url$,r$+"Recettes01.htm")
FOR i% = 2 TO 20
    print "Page "+str$(i%)
    a$ = url$+"&page="+STR$(i%)
    WebLoadFic(a$,r$+"Recettes"+RIGHT$("0"+STR$(i%),2)+".htm")
NEXT i%
CAPTION 12,""
sf$ = "htm": GOSUB Dir
RETURN
' ==============================================================================
Convtxt:
CAPTION 12,"En cours..."
' conversion des fichiers htm en txt
EXECUTE_WAIT "cmd.exe /c DEL /Q "+r$+"*.txt"
FOR i% = 1 TO 20
    f$ = r$+"Recettes"+RIGHT$("0"+STR$(i%),2)+".htm"
    fr$ = r$+"Recettes"+RIGHT$("0"+STR$(i%),2)+".txt"
    ft$ = rtm$+"Temp.txt"
    Html2Txt(f$,ft$)
    FILE_OPEN_READ 1,ft$: FILE_OPEN_WRITE 2,fr$
    FILE_READLN 1,a$: WHILE INSTR(a$,"Trier les r")=0: FILE_READLN 1,a$: END_WHILE
    
    WHILE FILE_EOF(1)=0
        FILE_READLN 1,a$: a$ = RTRIM$(a$)
        IF a$ <> ""
            IF LEN(a$)-LEN(LTRIM$(a$)) > 10
                a$ = STRING$(10," ")+LTRIM$(a$)
            END_IF
            k% = INSTR(a$,CHR$(9)+CHR$(9))
            WHILE k%>0
                a$ = LEFT$(a$,k%)+RIGHT_POS$(a$,k%+2)
                k% = INSTR(a$,CHR$(9)+CHR$(9))
            END_WHILE
            IF INSTR(a$,"Précédent")>0 THEN EXIT_WHILE
            FILE_WRITELN 2,a$
        END_IF
    END_WHILE
    FILE_CLOSE 1: FILE_CLOSE 2
NEXT i%
CAPTION 12,""
sf$ = "txt": GOSUB Dir
RETURN
' ==============================================================================
Liens:
CAPTION 12,"En cours..."
FILE_OPEN_WRITE 1,fll$
FOR i% = 1 TO 20
    f$ = r$+"Recettes"+RIGHT$("0"+STR$(i%),2)+".htm"
    FILE_OPEN_READ 2,f$
    b$= "_"
    WHILE FILE_EOF(2)=0
        FILE_READLN 2,a$
        IF INSTR(a$,"<h2><a id=") > 0
            k% = INSTR(a$,"href="): a$ = RIGHT_POS$(a$,k%+6)
            k% = INSTR(a$,">"): l$ = LEFT$(a$,k%-2): a$ = RIGHT_POS$(a$,k%+1)
            k% = INSTR(a$,"<"): t$ = LEFT$(a$,k%-1)
            ' conversion des caractères spéciaux html
            FOR x% = 1 TO nc%
                k%=INSTR(t$,vi$(x%))
                WHILE k%>0
                    t$=LEFT$(t$,k%-1)+vr$(x%)+RIGHT_POS$(t$,k%+LEN(vi$(x%)))
                    k%=INSTR(t$,vi$(x%))
                END_WHILE
            NEXT x%
            FILE_WRITELN 1,b$+t$: FILE_WRITELN 1,l$: ' titre et url
            b$ = ""
        END_IF
    END_WHILE
    FILE_CLOSE 2
NEXT i%
FILE_CLOSE 1
CAPTION 12,""
RETURN
' ==============================================================================
Vliens:
CLEAR 21: CLEAR 22
FILE_OPEN_READ 1,fll$
i% = 0
WHILE FILE_EOF(1) = 0
    i% = i%+1
    FILE_READLN 1,a$ : ' titre
    ITEM_ADD 21,RIGHT$("  "+STR$(i%),3)+" "+a$
    FILE_READLN 1,a$: ' lien
    ITEM_ADD 22,a$
END_WHILE
FILE_CLOSE 1
SHOW 20
RETURN
' ==============================================================================
Afrec:
cl% = ITEM_INDEX(21)
a$ = ITEM_READ$(22,cl%)
WebLoadFic(a$,rtm$+"Rect.htm"): ' pour voir...
Html2Txt(rtm$+"Rect.htm",rtm$+"Tmpa.txt")
FILE_OPEN_READ 1,rtm$+"Tmpa.txt": FILE_OPEN_WRITE 2,rtm$+"Tmp.txt"
WHILE FILE_EOF(1)=0
    FILE_READLN 1,a$: IF TRIM$(a$)<>"" THEN FILE_WRITELN 2,RTRIM$(a$)
END_WHILE
FILE_CLOSE 1: FILE_CLOSE 2: FILE_DELETE rtm$+"Tmpa.txt"
FILE_OPEN_READ 1,rtm$+"Tmp.txt": FILE_OPEN_WRITE 2,rtm$+"Rect.txt"
    FILE_READLN 1,a$: FILE_WRITELN 2,a$: FILE_WRITELN 2,"": ' titre
    FILE_READLN 1,a$: WHILE INSTR(a$,"Quantit")=0: FILE_READLN 1,a$: END_WHILE
    FILE_READLN 1,b$: FILE_WRITELN 2,LTRIM$(a$)+": "+LTRIM$(b$)
    FILE_READLN 1,a$: FILE_READLN 1,b$: FILE_WRITELN 2,LTRIM$(a$)+": "+LTRIM$(b$)
    FILE_READLN 1,a$: FILE_READLN 1,b$: FILE_WRITELN 2,LTRIM$(a$)+": "+LTRIM$(b$)
    FILE_READLN 1,a$: FILE_READLN 1,b$: FILE_WRITELN 2,LTRIM$(a$)+": "+LTRIM$(b$)
    FILE_READLN 1,a$: FILE_READLN 1,b$: FILE_WRITELN 2,LTRIM$(a$)+": "+LTRIM$(b$)
    FILE_READLN 1,a$: WHILE INSTR(a$,"Ingr")=0: FILE_READLN 1,a$: END_WHILE
    FILE_WRITELN 2,a$
    WHILE FILE_EOF(1)=0
        FILE_READLN 1,a$: a$ = RTRIM$(a$)
        IF a$ <> ""
            IF LEN(a$)-LEN(LTRIM$(a$)) > 5
                a$ = STRING$(5," ")+LTRIM$(a$)
            END_IF
            k% = INSTR(a$,CHR$(9)+CHR$(9))
            WHILE k%>0
                a$ = LEFT$(a$,k%)+RIGHT_POS$(a$,k%+2)
                k% = INSTR(a$,CHR$(9)+CHR$(9))
            END_WHILE
            IF INSTR(a$,"Signaler une erreur")>0 THEN EXIT_WHILE
            FILE_WRITELN 2,a$
        END_IF
    END_WHILE
    FILE_CLOSE 1: FILE_CLOSE 2: FILE_DELETE rtm$+"Tmp.txt"
CLEAR 24: FILE_LOAD 24,rtm$+"Rect.txt"
SHOW 23
RETURN
' ==============================================================================
Cnx:
EXECUTE_WAIT ITEM_READ$(22,cl%)
RETURN
' ==============================================================================
Cherche:
b$ = TEXT$(27)
IF b$ = "" THEN RETURN
b$ = UPPER$(b$): CLEAR 24
FOR i% = 1 TO COUNT(21)
    a$ = ITEM_READ$(21,i%)
    IF INSTR(UPPER$(a$),b$) > 0 THEN ITEM_ADD 24,a$
NEXT i%
ITEM_ADD 24,"          ---------- Fin de recherche ----------"
RETURN
' ==============================================================================
SUB WebLoadFic(url$,fr$)
' Téléchargement d'un fichier web donné par son url -> fr$
' (affichage d'une fenêtre noire temporaire jusqu'à la fin de l'opération).
DIM_LOCAL f,q$,fvb$: fvb$ = rtm$+"Download.vbs": q$ = CHR$(34)
f=1950: WHILE OBJECT_EXISTS(f)=1: f=f+1: END_WHILE
FORM f: TOP f,TOP(0): LEFT f,LEFT(0): WIDTH f,WIDTH(0): HEIGHT f,HEIGHT(0)
BORDER_HIDE f: COLOR f,255,0,0: ' témoin d'activité
FILE_OPEN_WRITE 9,fvb$
FILE_WRITELN 9,"strFileURL = "+q$+url$+q$
FILE_WRITELN 9,"strHDLocation = "+q$+fr$+q$
FILE_WRITELN 9,"Set objXMLHTTP = CreateObject("+q$+"MSXML2.XMLHTTP"+q$+")"
FILE_WRITELN 9,"objXMLHTTP.open "+q$+"GET"+q$+", strFileURL, false"
FILE_WRITELN 9,"objXMLHTTP.send()"
FILE_WRITELN 9,"If objXMLHTTP.Status = 200 Then"
FILE_WRITELN 9,"Set objADOStream = CreateObject("+q$+"ADODB.Stream"+q$+")"
FILE_WRITELN 9,"objADOStream.Open"
FILE_WRITELN 9,"objADOStream.Type = 1"
FILE_WRITELN 9,"objADOStream.Write objXMLHTTP.ResponseBody"
FILE_WRITELN 9,"objADOStream.Position = 0"
FILE_WRITELN 9,"Set objFSO = Createobject("+q$+"Scripting.FileSystemObject"+q$+")"
FILE_WRITELN 9,"If objFSO.Fileexists(strHDLocation) Then objFSO.DeleteFile strHDLocation"
FILE_WRITELN 9,"Set objFSO = Nothing"
FILE_WRITELN 9,"objADOStream.SaveToFile strHDLocation"
FILE_WRITELN 9,"objADOStream.Close"
FILE_WRITELN 9,"Set objADOStream = Nothing"
FILE_WRITELN 9,"End if"
FILE_WRITELN 9,"Set objXMLHTTP = Nothing"
FILE_CLOSE 9
EXECUTE_WAIT "cscript.exe " + fvb$
FILE_DELETE fvb$
DELETE f
END_SUB
' ==============================================================================
SUB Html2Txt(f$,ft$)
' conversion approximative fichier html f$ en fichier texte brut dans ft$
DIM_LOCAL a$,s$,ba$,cr$,k%,k1%,ns%,csp$(50),crm$(50)
    cr$ = CHR$(13)+CHR$(10): ' saut de ligne
' Caractères spéciaux Html (successivement caract.codé,caract.de remplacement):
a$="&eacute;,é,&egrave;,è,&ecirc;,ê,&ucirc;,û,&agrave;,à,&Eacute;,É,&Agrave;,À,&rsquo;,',"
a$=a$+"&nbsp;, ,<,<,>,>,&amp;,&,","+CHR$(34)+","
a$=a$+"&raquo;,"+CHR$(13)+CHR$(10)+CHR$(187)+",&rsaquo;,>,&lsaquo;,<,"
a$=a$+CHR$(194)+CHR$(189)+",½,"+CHR$(194)+CHR$(208)+",°,"+CHR$(195)+CHR$(136)+",È,"
a$=a$+CHR$(195)+CHR$(137)+",É,"+CHR$(195)+CHR$(155)+",Û,"+CHR$(195)+CHR$(160)+",à,"
a$=a$+CHR$(194)+CHR$(171)+",«,"+CHR$(194)+CHR$(187)+",»,"+CHR$(195)+CHR$(167)+",ç,"
a$=a$+CHR$(195)+CHR$(162)+",â,"+CHR$(195)+CHR$(168)+",ê,"+CHR$(195)+CHR$(169)+",é,"
a$=a$+CHR$(195)+CHR$(170)+",ê,"+CHR$(195)+CHR$(174)+",ï,"+CHR$(195)+CHR$(175)+",ï,"
a$=a$+CHR$(195)+CHR$(180)+",ô,"+CHR$(195)+CHR$(187)+",û,"+CHR$(197)+CHR$(147)+",oe,"
a$=a$+CHR$(226)+CHR$(128)+CHR$(153)+",',"+CHR$(226)+CHR$(130)+CHR$(172)+",€,"
a$=a$+CHR$(226)+CHR$(128)+CHR$(147)+",-,"
a$=a$+"è,è,é,é,ë,ë,î,î,ô,ô,','"
    k% = INSTR(a$,",")
    WHILE k%>0
        ns% = ns%+1: csp$(ns%) = LEFT$(a$,k%-1): a$ = RIGHT_POS$(a$,k%+1): k% = INSTR(a$,",")
        IF k%=0 THEN crm$(ns%) = a$: EXIT_WHILE
        crm$(ns%) = LEFT$(a$,k%-1)
        a$ = RIGHT_POS$(a$,k%+1): k% = INSTR(a$,",")
    END_WHILE

' lecture intégrale du fichier htm dans la variable a$
    FILEBIN_OPEN_READ 9,f$: k% = FILEBIN_SIZE(9): FILEBIN_CLOSE 9
    FILE_OPEN_READ 9,f$: FILE_READBUF 9,a$,k%: FILE_CLOSE 9
    k% = INSTR(a$,"</head>"): IF k%=0 THEN message "Pas de balise </head>": EXIT_SUB
    a$ = MID$(a$,k%+7,LEN(a$))
' suppression des balises <script...>...</script> et <style...>...</style> et de
' leur contenu
    k% = INSTR(a$,"<script")
    WHILE k%>0
      k1% =INSTR(a$,"</script>"): a$ = LEFT$(a$,k%-1)+MID$(a$,k1%+9,LEN(a$))
      k% = INSTR(a$,"<script")
    END_WHILE
    k% = INSTR(a$,"<style")
    WHILE k%>0
      k1% =INSTR(a$,"</style>"): a$ = LEFT$(a$,k%-1)+MID$(a$,k1%+8,LEN(a$))
      k% = INSTR(a$,"<style")
    END_WHILE
' remplacement des balises </tr> par des sauts de ligne
    k% = INSTR(a$,"</tr>")
    WHILE k%>0: a$=LEFT$(a$,k%-1)+cr$+MID$(a$,k%+5,LEN(a$)): k%=INSTR(a$,"</tr>"): END_WHILE
' remplacement des balises <p> par des espaces
    k% = INSTR(a$,"<p>")
    WHILE k%>0: a$=LEFT$(a$,k%-1)+" "+RIGHT_POS$(a$,k%+3): k%=INSTR(a$,"<p>"): END_WHILE
' suppression de toutes les balises (on garde les sauts de lignes, pour lisibilité)
    k% = INSTR(a$,"<")
    WHILE k% > 0
      k1% = INSTR_POS(a$,">",k%): ba$ = MID$(a$,k%,k1%-k%+1): ' balise trouvée
      IF LEFT$(ba$,3) = "<br": ' saut de ligne
         a$ = LEFT$(a$,k%-1)+CHR$(13)+CHR$(10)+MID$(a$,k1%+1,LEN(a$))
      ELSE
         a$ = LEFT$(a$,k%-1)+MID$(a$,k1%+1,LEN(a$)): ' suppression
      END_IF
      k% = INSTR(a$,"<")
    END_WHILE
' remplacement des caractères spéciaux
    FOR k% = 1 TO ns%
       s$ = csp$(k%): k1% = INSTR(a$,s$)
       WHILE k1%>0
          a$ = LEFT$(a$,k1%-1)+crm$(k%)+MID$(a$,k1%+LEN(s$),LEN(a$))
          k1% = INSTR(a$,s$)
       END_WHILE
    NEXT k%
' suppression des rc/al redondants
    k% = INSTR(a$,CHR$(13)+CHR$(10)+CHR$(13)+CHR$(10))
    WHILE k%>0
      a$ = LEFT$(a$,k%-1)+MID$(a$,k%+2,LEN(a$))
      k% = INSTR(a$,CHR$(13)+CHR$(10)+CHR$(13)+CHR$(10))
    END_WHILE
    FILE_OPEN_WRITE 9,ft$: FILE_WRITELN 9,a$: FILE_CLOSE 9
END_SUB
' ==============================================================================

Précisions:
Il faut d'abord préciser le chemin du répertoire de stockage, ainsi que le chemin des fichiers de manoeuvre, en tête du programme.
Les boutons Télécharger, Convertir en txt et Extraire la liste ne servent en principe qu'une seule fois.
La liste des fichiers obtenus est affichée pour pouvoir cliquer sur un fichier et voir sa structure, ça c'est pour la curiosité et la mise au point (par exemple pour voir comment le htm a été converti en txt).
Quand tout est au point ( Very Happy ça c'est moins évident...), le seul bouton utile est 'Voir la liste'.


Dernière édition par JL35 le Jeu 12 Mar 2015 - 21:37, édité 1 fois
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Jean Claude

avatar

Nombre de messages : 4933
Age : 63
Localisation : 83 Var
Date d'inscription : 07/05/2009

MessageSujet: Re: Recettes de cuisine   Jeu 12 Mar 2015 - 21:02

J'ai une erreur "Appel de SUB inconnu" ligne 94 après avoir cliqué sur téléchager.

Effectivement cette sub n'est pas présente.

A+
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
JL35



Nombre de messages : 5882
Localisation : 77
Date d'inscription : 29/11/2007

MessageSujet: Re: Recettes de cuisine   Jeu 12 Mar 2015 - 21:37

Oups ! excuse moi Jean Claude, un changement de nom de dernière minute ! Embarassed
C'est la sub de téléchargement, qui s'appelle WebLoadFic() comme sur la ligne 90 (et non plus PageWeb, mais c'est la même chose)
Je rectifie là-haut...

C'est fait !
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Jean Claude

avatar

Nombre de messages : 4933
Age : 63
Localisation : 83 Var
Date d'inscription : 07/05/2009

MessageSujet: Re: Recettes de cuisine   Jeu 12 Mar 2015 - 22:16

bon, ben j'en ai plein le bureau. What a Face

J'ai pourtant créer un dossier recette sur celui-ci.
le fichier liens.txt n'est pas créé.
Internet explorer refuse d'ouvrir les raccourcis, mais chrome accepte.

Je ne suis pas perdant, j'ai tout de même récupérer 20 recettes Very Happy

Je n'aurais pas le temps de suivre ce soir.
A+
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
JL35



Nombre de messages : 5882
Localisation : 77
Date d'inscription : 29/11/2007

MessageSujet: Re: Recettes de cuisine   Jeu 12 Mar 2015 - 22:40

Pour moi j'ai récupéré 20 fichiers html (il y a 20 pages sur internet, chacune contenant des liens sur sur une quinzaine de recettes), convertis en 20 fichiers texte, pour un total de 275 recettes (avec Firefox)
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
mindstorm

avatar

Nombre de messages : 530
Age : 48
Localisation : charente
Date d'inscription : 13/02/2013

MessageSujet: Re: Recettes de cuisine   Jeu 12 Mar 2015 - 22:55

jl35
je dispose d'une longue liste de recette de cuisine sur mon ordi mais en fichier image.
crois tu que l'on peut les lister et les afficher?
je rame toujours un peut Sad
je peux essayer de le faire, mais je ne dois pas m'y prendre de la bonne façon!


Dernière édition par mindstorm le Ven 13 Mar 2015 - 14:34, édité 1 fois
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Yannick

avatar

Nombre de messages : 7824
Age : 46
Localisation : Bretagne
Date d'inscription : 15/02/2010

MessageSujet: re    Jeu 12 Mar 2015 - 23:08

ha....les panoramiciens... on aurait du s' appeler les épicuriens... Laughing


Dernière édition par ygeronimi le Jeu 12 Mar 2015 - 23:10, édité 1 fois
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Yannick

avatar

Nombre de messages : 7824
Age : 46
Localisation : Bretagne
Date d'inscription : 15/02/2010

MessageSujet: re    Jeu 12 Mar 2015 - 23:09

ha....les panoramiciens... on aurait du s' appelait les épicuriens... Laughing


message en double
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
JL35



Nombre de messages : 5882
Localisation : 77
Date d'inscription : 29/11/2007

MessageSujet: Re: Recettes de cuisine   Ven 13 Mar 2015 - 0:02

@ygeronimi
A ma connaissance, le 1er panoramicien (de ce nom) étant apparu là en 2010: http://panoramic.free-boards.net/t576-un-panoramicien-en-plein-travail?highlight=panoramicien , on pourrait maintenant inventer le panépicurien...

Bonsoir mindstorm, oui on peut certainement, mais les données du problème sont plutôt floues.
Sous forme d'image ça veut dire quoi ? chaque recette est une image ? la liste est sous quelle forme ? un fichier texte ou bien également une image ?
Si tout est en images il faut prévoir une présentation dans des pictures, c'est moins souple à manipuler... mais faisable.
L'idéal serait d'avoir une liste au format texte (mais ça tu peux la faire toi-même si elle n'existe pas), de la présenter à l'écran, par exemple dans un memo, et faire en sorte que le clic sur un élément provoque l'affichage de la recette (image) correspondante.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
mindstorm

avatar

Nombre de messages : 530
Age : 48
Localisation : charente
Date d'inscription : 13/02/2013

MessageSujet: Re: Recettes de cuisine   Ven 13 Mar 2015 - 14:32

bon sang, mais c'est... bien sur !
pourquoi chercher plus loin

allez! cadeau:
Gaufres de Liège
500 gr de farine
180 gr de lait tiède
46 gr de levure de boulanger
2 œufs entiers + 1 jaune
1 pincée de sel
½ sachet de sucre vanillé
270 gr de beurre
370 gr de sucre perlé (gros grains)

Mettre sur la plan de travail la farine en fontaine. Y ajouter dans le creux le sucre, les œufs, la pincée de sel et le lait tiède dans lequel on aura dilué la levure 10 minutes auparavant. Pétrir légèrement et laisser reposer environ 30 minutes. Y incorporer ensuite 270 gr de beurre ramolli et 370 gr de sucre perlé.
Cuire dans un gaufrier muni d’un moule à gros trous.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Yannick

avatar

Nombre de messages : 7824
Age : 46
Localisation : Bretagne
Date d'inscription : 15/02/2010

MessageSujet: re   Ven 13 Mar 2015 - 14:53

Si tes fichiers sont nommés du nom de la recette...
tu places un objet "List" et tu le remplis avec "file_find..."

Dans l' idéal absolu, il faudrait que tes fichiers image soient de la même
dimension.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: Recettes de cuisine   

Revenir en haut Aller en bas
 
Recettes de cuisine
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» recettes de cuisine au plaisir gustatif
» Cuisine moléculaire - Forum, recettes et Wiki
» livret de recettes gratuit sun-maid raisins et fruits séchés
» Avez-vous eue un appel de DirectBuy pour 50,000$ pour une cuisine à Ottawa ?
» Mon livre de cuisine

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC 32 bits :: Vos sources, vos utilitaires à partager-
Sauter vers: