VBA - Web Automation - Part 1 |
Sub YouTube() |
Dim i As Long |
Dim IE As Object |
Dim objElement As Object |
Dim objCollection As Object |
' Create InternetExplorer Object |
Set IE = CreateObject("InternetExplorer.Application") |
' You can uncoment Next line To see form results |
IE.Visible = True |
' Send the form data To URL As POST binary request |
IE.Navigate "https://www.youtube.com/feed/trending" |
' Statusbar |
Application.StatusBar = "www.excely.com is loading. Please wait..." |
' Wait while IE loading... |
Do While IE.Busy |
Application.Wait DateAdd("s", 1, Now) |
Loop |
' Find 2 input tags: |
' 1. Text field |
' <input type="text" class="textfield" name="s" size="24" value="" /> |
' |
' 2. Button |
' <input type="submit" class="button" value="" /> |
Application.StatusBar = "Search form submission. Please wait..." |
Set objCollection = IE.Document.getElementsByTagName("a") |
i = 0 |
While i < objCollection.Length |
ThisWorkbook.Sheets("YouTube").Cells(i + 1, 1) = objCollection(i).href |
i = i + 1 |
Wend |
'objElement.Click ' click button to search |
' Wait while IE re-loading... |
Do While IE.Busy |
Application.Wait DateAdd("s", 1, Now) |
Loop |
' Show IE |
IE.Visible = True |
' Clean up |
Set IE = Nothing |
Set objElement = Nothing |
Set objCollection = Nothing |
Application.StatusBar = "" |
End Sub |
import sys from PyQt5.QtCore import QSize from PyQt5.QtGui import QImage, QPalette, QBrush from PyQt5.QtWidgets import * class MainWindow ( QWidget ): def __init__ ( self ): QWidget. __init__ ( self ) self .setGeometry( 100 , 100 , 300 , 200 ) oImage = QImage( "test.jpg" ) sImage = oImage.scaled(QSize( 300 , 200 )) # resize Image to widgets size palette = QPalette() palette.setBrush( 10 , QBrush(sImage)) # 10 = Windowrole self .setPalette(palette) self .show() if __name__ == "__main__" : app = QApplication(sys.argv) oMainwindow = MainWindow() sys.exit(app.exec_())
To close an internet explorer instance
ReplyDeleteDim IE As Object
Set IE = createobject("internet explorer.application")
Set IE= getobject("new:{D5E8041D-920F-45e9-B8FB-B1DEB82C6E5E}")
'DO STUFF
'CLEAN UP
IE.QUIT
SET IE = NOTHING