Requête web sur google.fr et mots clés...

mericc

XLDnaute Nouveau
Bonjour à tous! (et spécial dédicace à Tatiak au passage!)

Voilà le pb (je précise je suis supernewbie) et là, je fais une macro
à l'aide de l'enregistreur de VBA.

Mon objectif: rapatrier sur une feuille excel ma recherche effectuée
dans le moteur de recherche google.fr sur les 100 premières pages
pour les deux mots clés: poesie+livre

Sub RequêteWeb001()
'
' RequêteWeb001 Macro
'
With ActiveSheet.QueryTables.Add(Connection:= _
"URL;http://www.google.fr/search?as_q=poesie%2Blivre&hl=fr&num=100&btnG=Recherche+Google&as_epq=&as_oq=&as_eq=&lr=&as_ft=i&as_filetype=&as_qdr=all&as_occt=any&as_dt=i&as_sitesearch=&as_rights=&safe=images" _
, Destination:=Range("$A$2"))
.Name = _
"search?as_q=poesie%2Blivre&hl=fr&num=100&btnG=Recherche+Google&as_epq=&as_oq=&as_eq=&lr=&as_ft=i&as_filetype=&as_qdr=all&as_occt=any&as_dt=i&as_sitesearch=&as_rights=&safe=images"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.WebSelectionType = xlSpecifiedTables
.WebFormatting = xlWebFormattingNone
.WebTables = _
"9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,"
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = True
.WebDisableDateRecognition = True
.WebDisableRedirections = True
.Refresh BackgroundQuery:=False
End With
End Sub

Ouf!

C'est bien quand on connait pas comme moi la programmation VBA, alors
en attendant d'être plus calé, j'en fais appel à vos connaissances...

La macro est bien, mais forcément elle se limite à deux mots clés, ici:
poesie ET livre...

Comment pourrais je faire, sans à chaque fois aller resélectionner dans la fenêtre "requete web" d'excel, les 100 liens (tables?) pour d'autres mots clés?

Si je veux faire par exemple: philosophie+livre, je suis obligé de relancer une requête et aller resélectionner les 100 tables qui se déroulent dans la fenêtre...

Y aurait il moyen ou pas?? d'avoir juste une "zone" ou je tape mes mots clés..
et zouu la macro travaille...et que je n'ai pas autant de macros que j ai de combinaisons de mots.

:confused:


J'avais pensé à faire un "copier/coller" de la macro, là, telle qu'elle est retranscrite, et à chaque fois changer les mots lorsque j ai une combinaison
donnée (c'est plus rapide que d'aller reselectionner toutes les tables de la fenetre de résultats de google...),

mais Y a t il mieux que ca, avec une petite
boite de dialogue par exemple...

Merci d'avance!

Eric
 

albert

XLDnaute Occasionnel
Re : Requête web sur google.fr et mots clés...

Bonjour Eric,

Tu détermines le lieu où se trouve la constante dans la feuille :
u = Cells(3, 1)
tu indiques la constante à prendre en compte par l’url :
" & u & "

et dans la feuille tu indiques la constante en C1

albert

Sub RequêteWeb001()

u = Cells(3, 1) ' mettre la recherche dans C1
'---préparation (efface les anciennes recherches)
Columns("A:A").Select
Selection.ClearContents
Range("A1").Select
'---------------------

With ActiveSheet.QueryTables.Add(Connection:= _
"URL;http://www.google.fr/search?as_q=" & u & "%2Blivre&hl=fr&num=100&btnG=Rech erche+Google&as_epq=&as_oq=&as_eq=&lr=&as_ft=i&as_ filetype=&as_qdr=all&as_occt=any&as_dt=i&as_sitese arch=&as_rights=&safe=images" _
, Destination:=Range("A10"))

.WebFormatting = xlWebFormattingNone
.WebTables = _
"9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25 ,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,4 2,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58, 59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75 ,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90"

.Refresh BackgroundQuery:=False
End With
End Sub
 

Pièces jointes

  • eric.xls
    31.5 KB · Affichages: 105
  • eric.xls
    31.5 KB · Affichages: 103
  • eric.xls
    31.5 KB · Affichages: 104

albert

XLDnaute Occasionnel
Re : Requête web sur google.fr et mots clés...

Erreur impardonnable !!!
u = Cells(1, 3) ' mettre la recherche dans C1

supprimer "%2Blivre dans l’adresse url

mettre : livre+philosophie en C1

erreur réparée

albert
 

Pièces jointes

  • eric.xls
    34.5 KB · Affichages: 116
  • eric.xls
    34.5 KB · Affichages: 127
  • eric.xls
    34.5 KB · Affichages: 119

mericc

XLDnaute Nouveau
Re : Requête web sur google.fr et mots clés...

Ch'alut Albert!

Yeap!

J'allais te demander pourquoi il y avait livre
dans la macro..

je reviens vers toi...
je reprends ce que tu as "corrigé"...avec ton nouveau fichier..

Et je "vous" (ca intéresse peut etre d'autres?) au courant..

à pluche ;)

Eric
 

mericc

XLDnaute Nouveau
Re : Requête web sur google.fr et mots clés...

Re! Me revoilou!

Tip top! Trop de la balle!

Ca chemar, c est la chenille qui redémarre! (lol)

Cool! Clap clap pour ce script (c est comme ca que l on dit?)

Parrrrrrrrrr contre, 3 "chtites questions":

Preums':

J' ai essayé en saisissant plusieurs mots clés comme
livre+philosophie+alain+critiques ..
Rien ne bloque, j'ai les résultats..mais je voulais
savoir telle que tu l'as écrite la macro en fait "digère"
autant de mots clés que l on veut? ou y a t il une limite???

Deuxième kouestcheuun:

faut il mettre le signe "+" entre chaque mot clé, ou est
ce qu'un espace suffit?

La troisième, the last but not least!(peut etre la + importante à mes yeux):

Chaque résultat (concernant un site donc) qui est renvoyé est composé
soit de deux lignes (un commentaire qui arrive en premier puis sur la ligne
d'en dessous, le lien du site) soit de 3 lignes (la 3ème ligne étant encore
un "autre commentaire") et rarement une seule ligne composée du lien
du site (mais je pense que je ne l ai pas vu); enfin, chaque "résultat"
(3lignes ou 2ligne ou 1ligne) est séparé par une ligne "à vide"...

...la question arrive :eek: :

pourrait on en amont (disons dans la macro) ne demander que les lignes qui contiennent le lien du site internet concerné par le ou les mots clés que l on a tapés????
Ca serait plus lisible..et ce qui est surtout intéressant ce sont les liens
(enfin pour ce qui me concerne)...

Je peux effectivement jouer après avec une suppression des lignes "à vide"
et faire un filtre..mais voilà je me demandais si en amont on pouvait déjà
faire ce filtre...

possible or not possible?

:confused: :confused:

Merci encore..

Eric
 

albert

XLDnaute Occasionnel
Re : Requête web sur google.fr et mots clés...

1 et 2 :C’est la première fois que je travaille sur l’URL google => j’en suis au même point que toi : il faut tester

3/ avec vba, on peut supprimer les liges vides, et retenir tous les www.
Mais dans tous les cas on conserve la ligne entière => on ne peut faire un tri qu’avec des constantes, ce qui fait que ce tri ne peut pas être intelligent
 

mericc

XLDnaute Nouveau
Re : Requête web sur google.fr et mots clés...

Bonsoir Albert

Ok! Bien compris!

Bon bah si je suis inspiré et surtout que mes recherches
seront fructueuses, j hésiterai pas à faire un retour
sur ce post...

Merci tout de même car l'épine était quand même "costaude"!
:)

Good night all folks!

Eric
 

Statistiques des forums

Discussions
312 370
Messages
2 087 692
Membres
103 641
dernier inscrit
anouarkecita2