Bonjour,
Je cherche un code en VBScript, qui me permet de lire une page web, extraire les données de cette page et les exporter dans un fichier excel.
Merci, de vos aides.
Bonjour,
Je cherche un code en VBScript, qui me permet de lire une page web, extraire les données de cette page et les exporter dans un fichier excel.
Merci, de vos aides.
voici un exemple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32 Titre = "Extraire les données d'une page web" Set ie = CreateObject("InternetExplorer.Application") Set objFSO = CreateObject("Scripting.FileSystemObject") ie.Navigate ("http://www.google.com") ie.Visible=false DO WHILE ie.busy LOOP Data = ie.document.documentElement.innertext DataHTML = ie.document.documentElement.innerHTML strFileXLS = "export2xl.xls" strFileHTML = "exportHTML.txt" Set objTextFile = objFSO.OpenTextFile(strFileXLS,2,True) Set objHTMLFile = objFSO.OpenTextFile(strFileHTML,2,True) objTextFile.WriteLine(Data) objHTMLFile.WriteLine(DataHTML) objTextFile.Close objHTMLFile.Close ie.Quit Set ie=Nothing Question = MsgBox ("Voulez-vous Ouvrir le fichier """& strFileXLS &""" ?" ,VBYesNO+VbQuestion,Titre) If Question = VbYes then call Explorer(strFileXLS) wscript.Quit Else call Explorer(strFileHTML) wscript.Quit end if Function Explorer(File) Set ws=CreateObject("wscript.shell") ws.run "Explorer.exe "& File & "\" end Function
Comme je suis débutant en vbscripe, je cherche d'exporter plusieurs pages web dans un seul fichier excel, tel que les données soient bien rangées dans des colonnes, c' est a dire la colonne NOM par exemple je trouve que les noms, dans la colonne PRÉNOM que les prénoms....
Merci d'avance.
Mon travail consiste d'automatiser une application web (en utilisant QTP) pour extraire les CV d'une base de données, une fois ces derniers sélectionnés dans une liste, il faut que je passe ligne par ligne (CV par CV), je clique sur le lien de chaque CV, après, une page web s'ouvre, ensuite j'exporte les donnes de chaque page web (html) vers un fichier excel.
Voila mon
Merci de vos aides.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
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 'DebutCode Browser("Bienvenue sur le site").Page("Bienvenue sur le site").WebEdit("motsCLes").Set DataTable("motsCles", dtglobalSheet) motsCles = DataTable.GlobalSheet.GetParameter("motsCles") ' Si le mot cle est egale JAVA ou .NET ou PHP If motsCles = "JAVA" OR motsCles = ".NET" OR motsCles = "PHP" Then Browser("Bienvenue sur le site").Page("Bienvenue sur le site").Image("Lancer la recherche").FireEvent "onmouseover" Browser("Bienvenue sur le site").Page("Bienvenue sur le site").Image("Lancer la recherche").Click 35,13 'Extraire le contenu de la page web dans un fichier web Call GetDataWeb Function GetDataWeb Set ie = CreateObject("InternetExplorer.Application") Set fso = CreateObject("Scripting.FileSystemObject") dim adresse adresse = Browser("Bienvenue sur le site").Page("Bienvenue sur le site_2").Link("CV").GetROProperty("url") ie.Navigate (adresse) ie.Visible = false DO WHILE ie.busy LOOP Data = ie.document.documentElement.innertext DataHTML = ie.document.documentElement.innerHTML strFileXLS = "export2xl.xls" strFileHTML = "exportHTML.txt" Set objTextFile = fso.OpenTextFile(strFileXLS,2,True) Set objHTMLFile = fso.OpenTextFile(strFileHTML,2,True) objTextFile.WriteLine(Data) objHTMLFile.WriteLine(DataHTML) objTextFile.Close objHTMLFile.Close ie.Quit Set ie=Nothing ' Enregistrer le fichier excel fileExport.xls fso.CopyFile "export2xl.xls","c:\Donnees\fileExport.xls",True End Function Browser("Bienvenue sur le site").Page("Bienvenue sur le site_2").Link("CV").Click Browser("Bienvenue sur le site").Page("Bienvenue sur le site_3").Link("Retour à la liste des").Click Browser("Bienvenue sur le site").Page("Bienvenue sur le site_2").Link("CV_2").Click Browser("Bienvenue sur le site").Page("Bienvenue sur le site_4").Link("Retour à la liste des").Click Browser("Bienvenue sur le site").Page("Bienvenue sur le site_2").Link("2").Click Browser("Bienvenue sur le site").Page("Bienvenue sur le site_5").Link("CV").Click Browser("Bienvenue sur le site").Page("Bienvenue sur le site_6").Link("Retour à la liste des").Click Browser("Bienvenue sur le site").Page("Bienvenue sur le site_5").Link("Nouvelle recherche").Click End If 'FinCode
Cordialement.
Bonjour,
J'ai un problème avec mon code, je souhaite récupérer la valeur correspondante a mon champs, en effet, j'ai dans un fichier excel dynamique, qui contient des données, je souhaite exporter ces dernières vers un autre fichier excel, par exemple, j'ai langue1:Français, Niveau:Courant et langue2:Anglais, Niveau:scolaire, mon objectif est de récupérer pour le champs langue1, sa vraie valeur de niveau (courant). mon code est:
Quelqu'un(e) a une idée?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 Set monFichier = fso.OpenTextFile("C:\fichierExport.xls", 1) Do while Not monFichier.AtEndOfStream maLigne = monFichier.ReadLine If instr(maLigne, "Langue 1") <> 0 Then objWorkbook.Activesheet.Range("BB" & k + 3) = mid(maLigne, 9) End If If instr(maLigne, "Niveau") <> 0 Then objWorkbook.Activesheet.Range("BC" & k + 3) = mid(maLigne,7) End If
Merci.
Partager