在使用输入框给出日期标准后抓取数据



我需要你的帮助下面的代码。我正在根据日期标准从网站上抓取数据。我有代码,直到它从我通过输入框给出的特定日期打开页面,之后它移动到新页面,其中我有标题下的数据产品(s),制造商,NOC的条件,合规通知日期,药用成分(s)和DIN(s)。我需要把这些数据复制到excel中。有谁能帮我写代码,怎么复制数据?下面是我的代码,直到它进入新的页面。

Option Explicit
Sub Canada_Sorucing()
Dim IE As Object, obj As Object
Dim mynocFromDate As String
Set IE = CreateObject("InternetExplorer.Application")
With IE
.Visible = True
.navigate ("https://health-products.canada.ca/noc-ac/index-eng.jsp")
While IE.Readystate <> 4 Or IE.busy: DoEvents: Wend
mynocFromDate = InputBox("enter from date eg.2016-10-01, yyyymmdd")
IE.document.all("nocFromDate").Value = mynocFromDate
IE.document.getElementsByName("action").Item.Click
Do While IE.busy: DoEvents: Loop
worksheets("Sheet1").Range("A:Z").ClearContents
'from here i need to copy data under headings Product(s)    ,Manufacturer   ,NOC with conditions    ,Notice of Compliance date  ,Medicinal ingredient(s)    and DIN(s)
            
End With
IE.Quit
End Sub

请帮。

使用MS Internet控件和MS HTML库,我将从以下步骤开始:

Sub Canada_Sorucing()
Dim IE As SHDocVw.InternetExplorer
Dim doc As MSHTML.HTMLDocument
Dim col As MSHTML.IHTMLElementCollection
Dim mynocFromDate As String
Set IE = New InternetExplorer
With IE
    .Visible = True
    .navigate ("https://health-products.canada.ca/noc-ac/index-eng.jsp")
    While IE.readyState <> READYSTATE_COMPLETE Or IE.busy
        DoEvents
    Wend
    mynocFromDate = InputBox("enter from date eg.2016-10-01, yyyymmdd", , "2016-10-01")
    Set doc = IE.document
    With doc
        .getElementById("nocFromDate").Value = mynocFromDate
        .getElementById("action").Click
    End With
    Do While IE.busy Or IE.readyState <> READYSTATE_COMPLETE
        DoEvents
    Loop
    Set doc = IE.document
    '   Here's your start
    MsgBox doc.getElementsByTagName("TR")(1).innerText
    Set col = doc.getElementsByTagName("TR")
End With
IE.Quit
End Sub

最新更新