| Lecture d'une combo sur le web. | |
|
|
Auteur | Message |
---|
Pedro
Nombre de messages : 1595 Date d'inscription : 19/01/2014
| Sujet: Lecture d'une combo sur le web. Dim 11 Juin 2017 - 10:10 | |
| | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Lecture d'une combo sur le web. Dim 11 Juin 2017 - 11:50 | |
| Sur cette page, je vois 2 combos, chacune servant à sélectionner une langue (origine et destination) avec 17 lignes... | |
|
| |
papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: Lecture d'une combo sur le web. Dim 11 Juin 2017 - 14:20 | |
| Je pense que Pedro voulait désigner - ce combo:
Pour l’obtenir, cliquer sur - Plus en détail :
PS : Si ce n'est pas ça, alors, je n'ai rien dit ! | |
|
| |
Pedro
Nombre de messages : 1595 Date d'inscription : 19/01/2014
| Sujet: Lecture d'une combo sur le web. Dim 11 Juin 2017 - 14:54 | |
| Bonjour.
Oui, c'est exactement cela Papydall. | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Lecture d'une combo sur le web. Dim 11 Juin 2017 - 21:44 | |
| J'ai régardé cela, et j'avoue que je n'ai pas la moinde idée comment aborder cela. D'autant plus que ça dépend non seulement du browser, mais également de la version du browser et encore du système sous lequel il tourne. Il y a peut-être une chance d'y arriver, en utilisant, non pas Firefox, IE ou Chrome, mais l'objet WebBrowser de KGF.dll. Là en effet, j'ai une maîtrise plus importante des contenus. Essaie de créer un objet WebBrowser par la fonction - Code:
-
WB% = dll_call1("WB_Create",hnd%) puis tu utilises mes diverses fonctions pour le positionner et configurer, puis tu lui donnes ton URL par la fonction - Code:
-
res% = dll_call2("WB_Url",WB%,adr(url$)) et enfin, tu captures le contenu complet par - Code:
-
res% = dll_call2("WB_CopyToMemo",WB%,handle(memo%)) ou - Code:
-
res% = dll_call2("WB_HtmlToMemo",WB%,handle(memo%)) C'est ce que je peux te proposer de mieux. Et ça existe déjà... | |
|
| |
Marc
Nombre de messages : 2466 Age : 63 Localisation : TOURS (37) Date d'inscription : 17/03/2014
| Sujet: Re: Lecture d'une combo sur le web. Dim 11 Juin 2017 - 23:00 | |
| Bonjour à tous ! Je n'ai pas compris ce que souhaite faire exactement Pedro, mais pourquoi ne pas faire un simple copier-coller dans un fichier TXT ou un combo panoramic ? Résultat : - Code:
-
école commerciale - Handelsschule école communale - Gemeindeschule école confessionnelle - Bekenntnisschule école d'architecture - Bauakademie école d'art dramatique - Schauspielschule école de commerce - Handelsschule école de danse - Ballettschule école de dessin - Kunsthochschule école de filles - Mädchenschule école de garçons - Jungenschule école de la vie - Schule des Lebens école de l'air - Luftwaffenakademie école de musique - Musikschule école de peinture - Malschule école de pensée - Lehrmeinung école de pilotage - Pilotenschule école de police - Polizeischule école de secrétariat - Sekretärinnenschule école de ski - Skischule école des arts décoratifs - Hochschule für Kunstgewerbe école des deaux-arts - Kunsthochschule école d'infirmières - Krankenpflegeschule école du soir - Abendschule école élémentaire - Grundschule école hôtelière - Hotelfachschule école laïque - bekenntnisfreie Schule école libre - Privatschule école maternelle - Kindergarten école militaire - Militärakademie école mixte - gemischte Schule École nationale d'administration - staatliche Verwaltungshochschule école normale - Pädagogische Hochschule école normale d'instituteurs - Pädagogische Hochschule école pour adultes - Volkshochschule école primaire - Grundschule école privée - Privatschule école professionnelle - Berufsschule école publique - öffentliche Schule école secondaire - höhere Schule école supérieure - Hochschule école technique - Berufsfachschule être à bonne école - in einer guten Schule sein être à dure école - in einer harten Schule sein être à rude école - in einer harten Schule sein faire école buissonnière - Schule schwänzen grande école - Elitehochschule haute école - Hohe Schule école de yachting - Segelschule école d'équitation - Reitschule école supérieure de commerce - Handelsschule Puis le mettre en forme suivant l’utilisation demandée. | |
|
| |
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Lecture d'une combo sur le web. Dim 11 Juin 2017 - 23:04 | |
| Par ce qu'il souhaite 'automatiser' cette action pour la reproduire sur plusieurs dizaines, centaines ou milliers de recherches tout simplement. Et le faire manuellement tu en a pour des jours, voir des mois... | |
|
| |
Pedro
Nombre de messages : 1595 Date d'inscription : 19/01/2014
| Sujet: Lecture d'une combo sur le web. Lun 12 Juin 2017 - 7:59 | |
| Bonjour à tous.
Merci à tous de votre aide. Oui, effectivement, je souhaiterais automatiser cette tâche pour des milliers de mots.
C'est-à-dire récupérer les traductions, par programme, de ces mots.
Merci Klaus de ton aide: si tu as une solution, ce serait génial.
Je pense que l'objet WebBrowser ne fait que récupérer l'ensemble de la page html, ou le code htm. | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Lecture d'une combo sur le web. Lun 12 Juin 2017 - 9:28 | |
| - Citation :
- Je pense que l'objet WebBrowser ne fait que récupérer l'ensemble de la page html, ou le code htm.
Oui et non. L'objet WebBrowser implémente un véritable browser, basé sur InternetExplorer. Ce sont mes deux fonctions de DLL qui réalisent l'action que tu décris. Car, en effet, il est très compliqué d'aller chercher par programme, directement dans le browser, le contenu d'un champ spécifique. Par contre, mes deux fonctions retournent l'information globale dans un MEMO avec lequel on peut travailler en Panoramic, par la suite. Tu vas faire l'essai, ou tu voudrais que je te fasse une maquette ? | |
|
| |
Pedro
Nombre de messages : 1595 Date d'inscription : 19/01/2014
| Sujet: Lecture d'une combo sur le web. Lun 12 Juin 2017 - 9:39 | |
| Bonjour.
Merci Klaus d'avoir regardé le problème.
L'idéal serait de pouvoir récupérer le contenu affiché dans la combo, directement sur le site web. Car lire les infos des champs est vraiment très compliqué, j'en sais quelque chose.
J'ai réalisé un petit logiciel qui récupère les traductions de plus de 400.000 mots de cette façon. Il fonctionne très bien, mais le temps d'exécution est très long (environ 15 jours !!).
Connais-tu un site fournissant l'ensemble des mots composés, à partir d'un mot donné. Exemple avec 'école':
. école de commerce . école maternelle...
Je n'ai pas trouvé avec Google. | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Lecture d'une combo sur le web. Lun 12 Juin 2017 - 9:58 | |
| - Citation :
- Connais-tu un site fournissant l'ensemble des mots composés, à partir d'un mot donné.
Non. Ce n'est pas du tout mon domaine. Je vais faire une petite maquette appliquant la suggestion que je t'ai faite... | |
|
| |
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: Lecture d'une combo sur le web. Lun 12 Juin 2017 - 12:19 | |
| Voici une petite démo. Mais ce site n'est pas du tout adapté à ce que tu veix faire, pour les raisons suivantes: - le chargement de la page est "long" - initialement, la liste des expressions n'est pas chargée en totalité - il faut cliquer sur le lien "plus en détails" pour avoir la totalité - et même dans ce cas, la liste n'est pas chargée entièrement en mémoire. Elle est dynamique, et il faut la faire défiler jusqu'au bout pour que tout soit chargé. Et c'est seulement dans ce cas qu'on peut capter le conenu - il ne s'agit pas d'une combo, mais d'une multitude d'éléments HTML, un pour chaque terme. Voici à quoi ça ressemble: - Code:
-
<H3 class=dictBlockHeader>Expressions <SPAN id=totalPhrCount>(50)</SPAN></H3>
<DIV id=findPhraseBlock>
<DIV id=findPhraseIB class=input_s><INPUT onkeyup=javascript:fnOnFindKeyUp(event) id=findPhrase onkeydown=javascript:fnOnKeyDown(event) name=findPhrase placeholder="Recherche..."> </DIV><INPUT onclick=javascript:searchPhrases(0); id=searchSubmit type=button> <!--<input type="text" id="findPhrase" spellcheck="false"/><input type="button" name="findPhraseBtt" value="?????" id="findPhraseBtt" class="translit">
<div class="clearSearch"></div>--></DIV><BR>
<DIV id=allPhrases class=scrollbar style="OVERFLOW: auto; BORDER-TOP: #d7d7d7 1px solid; HEIGHT: 500px; BORDER-RIGHT: #d7d7d7 1px solid; BORDER-BOTTOM: #d7d7d7 1px solid; BORDER-LEFT: #d7d7d7 1px solid; DISPLAY: block">
<P class=phrList><A href="http://www.online-translator.com/dictionary/fr-de/école%20commerciale/">école commerciale</A> - Handelsschule</P>
<P class=phrList><A href="http://www.online-translator.com/dictionary/fr-de/école%20communale/">école communale</A> - Gemeindeschule</P>
<P class=phrList><A href="http://www.online-translator.com/dictionary/fr-de/école%20confessionnelle/">école confessionnelle</A> - Bekenntnisschule</P>
<P class=phrList><A href="http://www.online-translator.com/dictionary/fr-de/école%20d" ? architecture>école d'architecture</A> - Bauakademie</P> ... etc
J'ai fait une petite démo pour cela. Il faut attendre que la page soit entièrement chargée, puis faire défiler jusqu'au lien "plus en détails", cliquer dessus, puis faire défiler la liste obtenue jusqu'à la fin et cliquer dans la dernière ligne. Ensuite, on clique sur le bouton "Charger" à droite et on a un message avec le nombre de termes (50 dans ton cas) et un MEMO s'affiche avec le contenu HTML complet. Attention: il s'agit de 7905 lignes ! Voici le code: - Code:
-
' demo_pour_Pedro_Alvarez.bas
label charger dim res%, WB%, url$, i%, j%, k%, p%, nombre%, s$, t$
full_space 0
dll_on "KGF.dll"
WB% = dll_call1("WB_Create",handle(0)) res% = dll_call5("WB_Locate",WB%,10,10,1100,700)
memo 1 : top 1,10 : left 1,10 : width 1,600 : height 1,700 bar_both 1 : hide 1 button 3 : top 3,350 : left 3,1130 : caption 3,"Charger" : on_click 3,charger
url$ = "http://www.online-translator.com/dictionary/fr-de/%C3%A9cole" res% = dll_call2("WB_Url",WB%,adr(url$))
end
charger: res% = dll_call2("WB_HtmlToMemo",WB%,handle(1)) show 1 for i%=1 to count(1) s$ = item_read$(1,i%) if instr(s$,"<H3 class=dictBlockHeader>Expressions")>0 j% = instr(s$,"(") k% = instr(s$,")") nombre% = val(mid$(s$,j%+1,k%-j%-1)) message "Nombre="+str$(nombre%) return end_if next i% return
Conclusion: je pense que c'est inexploitable sur ce site. | |
|
| |
Pedro
Nombre de messages : 1595 Date d'inscription : 19/01/2014
| Sujet: Lecture d'une combo sur le web. Lun 12 Juin 2017 - 16:45 | |
| Bonjour.
Merci beaucoup Klaus d'avoir regardé le problème.
De mon côté, j'arrive facilement (!!) à obtenir les traductions en allemand, en examinant, par programme, le code html des pages.
La lecture des traductions de plus de 400.000 mots dure environ 15 jours !!
Mais l'enjeu en vaut le coup. | |
|
| |
Contenu sponsorisé
| Sujet: Re: Lecture d'une combo sur le web. | |
| |
|
| |
| Lecture d'une combo sur le web. | |
|