Problème d extraction du texte d une page web

eelguermat - 28 sept. 2017 à 16:50 - Dernière réponse :  VieuxBasic
- 24 oct. 2017 à 03:24
Bonjour,
mon probleme est que j extrait le texte d une page web avec inte de vb6 sur mon ordinateur ça marche mais dans autre ordinateur ça marche pas
aider moi pour résoudre ce problème merci
Afficher la suite 

14 réponses

Répondre au sujet
LaluneBe 7 Messages postés vendredi 29 septembre 2017Date d'inscription 11 octobre 2017 Dernière intervention - 10 oct. 2017 à 14:38
0
Utile
Bonjour,
Compiler le programme et faire un Package de votre programme
Commenter la réponse de LaluneBe
eelguermat - 10 oct. 2017 à 22:46
0
Utile
Bonjour,
tout d'abord je remercie LaluneBe.
le problème c'est que l'extraction d'une page web sur mon ordinateur est complète par contre dans un autre ordinateur avec le meme programme est partielle (une seule partie de la page est extraite)
merci de m'aider
Commenter la réponse de eelguermat
vb95 1386 Messages postés samedi 11 janvier 2014Date d'inscriptionContributeurStatut 12 décembre 2017 Dernière intervention - 11 oct. 2017 à 01:34
0
Utile
Bonjour !
1) comment mets-tu ton programme sur l'autre ordinateur ?
2) L'ordi du projet et celui qui sert de cible ont-ils le même système d'exploitation ?
3) L'extraction d'une page se fait-elle par rapport au contenu de l'écran ? Dans ce cas les résolutions d'écran sont elles identiques ?
Et des questions il y en aurait encore si on pousse plus loin
Autre chose : VB 6 est obsolète et plus mis à jour depuis longtemps ! Est-il encore compatible avec les nouveaux navigateurs ?
Sans plus de précisions ou de code difficile de t'aider
Commenter la réponse de vb95
eelguermat - 11 oct. 2017 à 14:03
0
Utile
1
Bonjour
le code suivant:
Inet1.url = "www.xe.com/currencyconverter/customize.php"
StrHtm = Inet1.OpenURL
la variable StrHtm donne tout le texte de la page web sur mon ordin par contre sa donne seulement une partie de texte de la page web dans autres ordin.
vb95 1386 Messages postés samedi 11 janvier 2014Date d'inscriptionContributeurStatut 12 décembre 2017 Dernière intervention - 11 oct. 2017 à 14:44
Je t'ai posé 3 questions et tu ne réponds à aucune
Comment veux tu que l'on t'aide dans ce cas ?
Commenter la réponse de eelguermat
elguermat - 16 oct. 2017 à 23:15
0
Utile
1
Bonjour
pour la réponse au questions
je compile mon programme dans l'autre ordinateur de la même façon que celle de mon ordinateur c.a.d la même source et le même langage de programmation
les ordinateurs ont le même système d'exploitation
la résolution est la même.
les textes obtenus ne sont pas les même.
vb95 1386 Messages postés samedi 11 janvier 2014Date d'inscriptionContributeurStatut 12 décembre 2017 Dernière intervention - 16 oct. 2017 à 23:31
Bonjour
Pour l'installer sur un autre PC il faut faire un Setup d'installation
VB 6 permet de faire ce Setup ( regarde l'onglet "Déploiement d'installation" ou "Assistant d'installation"
Commenter la réponse de elguermat
elguermat - 17 oct. 2017 à 13:25
0
Utile
Bonjour,
je l'ai déjà fait, même problème.

quand j'installe mon programme dans autres ordinateurs ça marche immédiatement dans certains ordinateurs , mais dans autres ordinateurs ça marche pas, ça donne juste une partie texte de la page web presque 256 caractère.
Merci
Commenter la réponse de elguermat
vb95 1386 Messages postés samedi 11 janvier 2014Date d'inscriptionContributeurStatut 12 décembre 2017 Dernière intervention - 17 oct. 2017 à 15:04
0
Utile
Alors je ne sais pas !
Peut-être un problème avec le navigateur Internet lorsque celui-ci est différent de celui ayant servi à créer le projet ?
Soit ton PC de développement avec Firefox par exemple .
Tu installes ton projet avec le setup sur un autre PC qui a Firefox comme navigateur : est-ce ton logiciel fonctionne ?
Tu installes ton projet avec le setup sur un autre PC qui a Google Chrome comme navigateur : est-ce ton logiciel fonctionne ?

C'est peut-être une piste mais sans certitude .......


Commenter la réponse de vb95
elguermat - 19 oct. 2017 à 10:32
0
Utile
Bonjour,
je pense que c'est le problème de navigateur, moi j'utilise Chrome.
Commenter la réponse de elguermat
VieuxBasic - 19 oct. 2017 à 18:40
0
Utile
Salut,
sur la page d'exemple donnée, tu as les caractères spéciaux:
"™ — "
Ces caractères ne sont peut-être pas supportés par d'autres navigateurs que "chrome" avec ton code, et qui bloques ou décalent l'encodage de la police.

Regarde comment sort ton texte StrHtm avec ces caractères spéciaux!

Car si un CHR(0) est injecté dans la chaîne, tu auras une terminaison de variable.
Commenter la réponse de VieuxBasic
VieuxBasic - 19 oct. 2017 à 20:21
0
Utile
Salut à tous,

Nous somme toujours en présence de la limitation du Visual Basic 6, en matière d'encodage de caractères.
Pour l'intervenant, il ne faut pas la chaîne de retour, directement dans une 'textbox' ou une chaîne string.
Le résultat du retour objet sera utilisé en tant que caractères UNICODE, mais en chaîne brute.

Dans l'URL exemple, nous avons :
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>

Donc, on mets de l'UTF8 dans une chaîne encodée en UTF16 !
D'où une erreur d'encodage de caractère sur certains caractères.
Les caractères français passeront, mais pas les caractères spéciaux.
La solution est convertir cette chaîne de sortie en brut, avant d'assigner une variable ou un objet.

Il nous faut :
Inet1.url = "www.xe.com/currencyconverter/customize.php"

StrHtm = WideCharToMultiByte (CP_UNICODE, 0&, ByVal StrPtr(Inet1.OpenURL), -1, vbNull, 0&, 0&, 0&)

(ou CP_UTF-16 car identique)

Ainsi, la chaîne brut est envoyée dans la fonction sans reformatage UTF8>UNICODE...

Pour les variables et l'implantation de WideCharToMultiByte, voir les exemples documentés sur le net.
Commenter la réponse de VieuxBasic
elguermat - 22 oct. 2017 à 18:12
0
Utile
Bonjour
Je vous remercie infiniment.
j'ai utilisé la fonction WideCharToMultiByte, et ça donné une chaîne vide.
SVP Donner moi un exemple d’utilisation de cette fonction merci.
Commenter la réponse de elguermat
VieuxBasic - 24 oct. 2017 à 03:24
0
Utile
Salut elguermat,
;)

Désolé, les liens sont interdit sur ce forum, et copier du code qui ne te conviendra pas est ridicule.

Tu te dois d'être curieux... car j'ai trouvé un exemple très rapidement sur un moteur de recherche.

Essai les bonnes combinaisons par ordre d'importance sans chercher à composer une phrase compréhensible.
"VB6 WideCharToMultiByte function"

Et paf... ta réponse.

Fais le test sans "StrPtr" qui pointe sur une variable... car ici, c'est une variable objet, qui n'est pas traitée de la même façon!

Allez courage!
Commenter la réponse de VieuxBasic

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.