код VBA для получения данных из Firefox и вставки в Excel - PullRequest
0 голосов
/ 07 октября 2018

Я пытаюсь получить некоторые данные с веб-сайта, я могу использовать только Firefox для доступа к сайту, и мне нужно получить данные и вставить их в Excel, есть способ сделать это в Интернете, но я не могу разобратьсядля Firefox.Может ли кто-нибудь помочь мне с этим?нижеприведенный веб-сайт предназначен для примера. Первоначальный веб-сайт имеет внутренний доступ к сети, веб-сайт будет состоять из данных в таблице.Заранее спасибо

Sub Test_OpenFireFoxNewTab()
OpenInFireFoxNewTab "https://www.amazon.com"
End Sub

Sub OpenInFireFoxNewTab(url As String)
Dim pathFireFox As String
Dim ffDoc As Object
Dim ffApp As WebBrowser_V1
Dim ffTable As Object
Dim clip As DataTable
pathFireFox = "C:\Program Files (x86)\Mozilla Firefox\firefox.exe"
If Dir(pathFireFox) = "" Then pathFireFox = "C:\Program Files\Mozilla 
Firefox\firefox.exe"
If Dir(pathFireFox) = "" Then
MsgBox "FireFox Path Not Found", vbCritical, "Macro Ending"
Exit Sub
End If
Shell """" & pathFireFox & """" & " -new-tab " & url, vbHide

Set ffApp = New WebBrowser_V1

ffApp.Visible = True

Do While ffApp.Busy: DoEvents: Loop
Do Until ffApp.readyState = READYSTATE_COMPLETE: DoEvents: Loop
Set ffDoc = ffApp.document


ffApp.ExecWB OLECMDID_SELECTALL, OLECMDEXECOPT_DODEFAULT
ffApp.ExecWB OLECMDID_COPY, OLECMDEXECOPT_DODEFAULT

Sheets("Sheet2").Select
With ActiveSheet
LastCol = .Cells(3, .Columns.Count).End(xlToLeft).Column
End With
h = LastCol + 1
Cells(1, h).Select
ActiveSheet.PasteSpecial Format:="Unicode Text", link:=False, _
DisplayAsIcon:=False
Sheets("Sheet1").Select

ffApp.Quit
Set ffApp = Nothing
End Sub'

1 Ответ

0 голосов
/ 07 октября 2018

Windows-машин:

Установите selenium basic отсюда.Затем добавьте ссылку на библиотеку типов селена через vbe> tools> reference.Драйвер FireFox .exe должен находиться в папке, находящейся по пути среды , иначе многие пользователи считают, что его установка в папку селена работает.Я не думаю, что вы можете использовать последние версии Firefox.Я думаю, что вам нужно FF v.46.0.1 .

Option Explicit
Public Sub ScrapeWithFireFox()
    Dim d As WebDriver
    Set d = New FirefoxDriver
    Const URL = "https://stackoverflow.com/"

    With d
         .get URL
        'do something with page
        Stop '<==Delete me later
        .Quit
    End With
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...