Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1746 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Numéros de téléphone google vers excel

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Numéros de téléphone google vers excel

n°2283486
alexstain
Geek en stock
Posté le 10-06-2016 à 18:42:15  profilanswer
 

Bonjour,
 
J'ai un fichier excel avec une liste d'entreprises.
Pour chacune d'elles, je fais une recherche sur google, ça m'affiche sur la droite l'entreprise avec son adresse et numéro de téléphone.
Y a t-il un moyen via une macro ou autre de récupérer automatiquement ces deux infos dans mon fichier excel ?
Colonne 1 : entreprise
Colonne 2 : adresse
Colonne 3 : numéro
 
Merci !


---------------
Ventes : http://forum.hardware.fr/forum2.ph [...] #t16617873
mood
Publicité
Posté le 10-06-2016 à 18:42:15  profilanswer
 

n°2283809
steveog
Posté le 17-06-2016 à 14:34:24  profilanswer
 

Bonjour,
 
Même besoin ici.
 
Pour info, j'ai fait quelques recherches sur Google, et ai trouvé une macro qui se rapproche de ce dont nous avons besoin.
Ici la macro recherche le nom de l'entreprise en cellule A1, et inscrit en cellule A3 le lien vers le site. (et en A2 c'est un mix entre le nom de l'entreprise  et le site trouvé)
 
Il faudrait adapter cette macro pour recevoir le numéro de téléphone et l'adresse mais je n'y connais rien...
 
 
 
Dim url As String, lastRow As Long
    Dim XMLHTTP As Object, html As Object, objResultDiv As Object, objH3 As Object, link As Object
    Dim start_time As Date
    Dim end_time As Date
 
    lastRow = Range("A" & Rows.Count).End(xlUp).Row
 
    Dim cookie As String
    Dim result_cookie As String
 
    start_time = Time
    Debug.Print "start_time:" & start_time
 
    For i = 1 To lastRow
 
        url = "https://www.google.co.in/search?q=" & Cells(i, 1) & "&rnd=" & WorksheetFunction.RandBetween(1, 10000)
 
        Set XMLHTTP = CreateObject("MSXML2.serverXMLHTTP" )
        XMLHTTP.Open "GET", url, False
        XMLHTTP.setRequestHeader "Content-Type", "text/xml"
        XMLHTTP.setRequestHeader "User-Agent", "Mozilla/5.0 (Windows NT 6.1; rv:25.0) Gecko/20100101 Firefox/25.0"
        XMLHTTP.send
 
            Set html = CreateObject("htmlfile" )
        html.body.innerHTML = XMLHTTP.ResponseText
        Set objResultDiv = html.getelementbyid("rso" )
        Set objH3 = objResultDiv.getelementsbytagname("H3" )(0)
        Set link = objH3.getelementsbytagname("a" )(0)
 
 
        str_text = Replace(link.innerHTML, "<EM>", "" )
        str_text = Replace(str_text, "</EM>", "" )
 
        Cells(i, 2) = str_text
        Cells(i, 3) = link.href
         
        DoEvents
    Next
 
    end_time = Time
    Debug.Print "end_time:" & end_time
 
    Debug.Print "done" & "Time taken : " & DateDiff("n", start_time, end_time)
    MsgBox "done" & "Time taken : " & DateDiff("n", start_time, end_time)

n°2283813
rat de com​bat
attention rongeur méchant!
Posté le 17-06-2016 à 16:32:27  profilanswer
 

Pour extraire autre chose du résultat Google faut modifier cette partie

Code :
  1. Set objResultDiv = html.getelementbyid("rso" )
  2. Set objH3 = objResultDiv.getelementsbytagname("H3" )(0)
  3. Set link = objH3.getelementsbytagname("a" )(0)


C'est des fonctions qui existent aussi en Javascript, on peut regarder par là pour avoir de la doc. Mais c'est peu fiable, car si Google modifie son site ça ne fonctionnera plus. Je modifierai aussi l'adresse (là c'est Google Inde),  genre "https://www.google.fr/search?q=". Je ne vois pas l'intérêt du paramètre "rnd".
 
Je ne peux pas aider d'avantage car je n'ai pas Excel. Perso je ferais ça en perl avec en sortie un fichier .csv à importer sous Excel.
 
En passant, il existe une API pour les pages jaunes, c'est peut-être mieux? http://evollia.com/2010/09/yellowa [...] -site-web/


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Numéros de téléphone google vers excel

 

Sujets relatifs
[VBA] Travail sur fichier excel en arrière planFusion de lignes sur excel
Problème avec la traduction google traduction api et c#[Excel] Création d'une requête SQL ?
Excel 2010 Touche tab pour passer à la zone de texte suivanteMettre une légende sur une google map
[VB/VBA/VBS] Macro excel d’impression sur plusieurs feuilles.Importer une données balisé dans excel
Sous total avec 2 filtre.Macro générer fichier excel avec info dans l'ordre
Plus de sujets relatifs à : Numéros de téléphone google vers excel


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR