Programme tv : collecte des infos sur site web (requete web dans excel)

Soyez le premier à donner votre avis sur cette source.

Vue 28 227 fois - Téléchargée 1 509 fois

Description

Petit programme qui va collecter sur un site web (www.tsr.ch = télévision suisse romande) les infos suivant le jour et la chaîne TV demandés + Envoi des données dans Excel grâce à une requête Web.

A l'ouverture du programme, il suffit de sélectionner le jour et la chaîne, et de cliquer sur le logo de la chaîne. Cela lance une requête web via Excel (vérifier la connexion). Le résultat s'affiche ensuite à l'écran...

REM : Pour l'instant ne retourne que l'horaire et le titre de l'émission principale du soir. Mais modification du code possible pour retourner plus d'infos.

Source / Exemple :


Private Sub collecterInfos()

Dim xlApp As Excel.Application
Dim xlClasseur As Excel._Workbook
Dim xlFeuill As Excel._Worksheet
Dim siteWeb As String
Dim chaine As Integer
Dim myProcesses() As Process
Dim myProcess As Process

' Modification de la chaine dans le cas où l'index de la combo est supérieur à 2
' Car sur le site d'où proviennent mes infos les index sont incrémentés 1, 2, 10, 11, 12, 13,... (saut de 2 à 10)
If cboChaine.SelectedIndex > 2 Then
   chaine = cboChaine.SelectedIndex + 8
Else
   chaine = cboChaine.SelectedIndex + 1
End If

' Construction de l'URL
' REM : recherche des infos sur le site de la TSR
siteWeb = "http://www.tsr.ch/tsr/index.html?siteSect=601000&idChaine=" & chaine & "&jourD=" & cboJour.Text & "&Ftime=1"

' Nouvelle application  Excel
xlApp = New Excel.Application
' Reste invisible
xlApp.Visible = False
' Ajout d'un onglet
xlClasseur = xlApp.Workbooks.Add

Dim xlFeuilles As Excel.Sheets = xlClasseur.Sheets
xlFeuill = xlFeuilles(1)

' Vide la feuille de son contenu
With xlFeuill
   .Cells.ClearContents()
End With

' Macro qui va rechercher les infos sur le site Web
With xlFeuill.QueryTables.Add("URL;" & siteWeb & "", xlFeuill.Range("A1"))
   .Name = "index.html?siteSect=601000&jourD=" & cboJour.Text & "&Ftime=1&idChaine=" & chaine & ""
   .FieldNames = True
   .RowNumbers = False
   .FillAdjacentFormulas = False
   .PreserveFormatting = True
   .RefreshOnFileOpen = False
   .BackgroundQuery = True
   .RefreshStyle = Excel.XlCellInsertionMode.xlInsertDeleteCells
   .SavePassword = True
   .SaveData = True
   .AdjustColumnWidth = True
   .RefreshPeriod = 0
   .WebSelectionType = Excel.XlWebSelectionType.xlSpecifiedTables
   .WebFormatting = Excel.XlWebFormatting.xlWebFormattingNone
   .WebTables = "39"
   .WebPreFormattedTextToColumns = True
   .WebConsecutiveDelimitersAsOne = True
   .WebSingleBlockTextImport = False
   .WebDisableDateRecognition = False
   .WebDisableRedirections = False
   .Refresh(BackgroundQuery:=False)
End With

' Sélection des cellules dont on a besoin
txtHoraire.Text = xlFeuill.Range("B3").Text
txtTitre.Text = xlFeuill.Range("C3").Text
txtRemarque.Text = xlFeuill.Range("B5").Text

' Fermeture de l'application sans sauvegarde
xlClasseur.Close(False)
xlApp.Quit()

' Contrôle des process
' Si un process EXCEL tourne encore je le flingue...
myProcesses = Process.GetProcesses()

For Each myProcess In myProcesses
   If UCase(myProcess.ProcessName) = "EXCEL" Then
      myProcess.Kill()
   End If
Next

End Sub

Codes Sources

A voir également

Ajouter un commentaire Commentaires
Messages postés
440
Date d'inscription
mardi 21 octobre 2003
Statut
Membre
Dernière intervention
6 mai 2010
1
ca ne marche pô sur VISUAL BASIC 6, cela marche seulement sur VISUAL BASIC .NET
Messages postés
60
Date d'inscription
dimanche 9 octobre 2005
Statut
Membre
Dernière intervention
30 novembre 2010

he comment marche votre truc eclairer moi je suis novice
j ai essayé d ouvrir le rendu du zip com projet sur vb6 mais appamrm c pas ca!
comment faire alors ?
Messages postés
23
Date d'inscription
mardi 23 avril 2002
Statut
Membre
Dernière intervention
5 février 2007

ben jenvoi une reuqete en winsock a programme-tv.net la jrecoi le code source de la page, jfé le tri et g mon programme et vla sque ca donne une foi trié et inséré ds ma page dacceuil (automatiquement a cahque lancement) :
http://www.olly.free.fr/tv.jpg
Messages postés
440
Date d'inscription
mardi 21 octobre 2003
Statut
Membre
Dernière intervention
6 mai 2010
1
& ce message s'adresse à olly & à spy166
je voudrai savoir vs n'avez pô des sources du même style pour voir votre methode à vous avec:
- System.Net
- & avec un winsock
Messages postés
440
Date d'inscription
mardi 21 octobre 2003
Statut
Membre
Dernière intervention
6 mai 2010
1
superbe source 8/10
au fait alor tu as resorti une autre version (je sai pô ce que tu a dis en haut, tu as dis ke tu allai le modifié encore)
Afficher les 13 commentaires

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.