2016-09-26 79 views
0

我想從網站獲取一些數據,首先填寫表單控件然後單擊按鈕,但是我無法從下拉列表中選擇值下框,請幫我完成這個任務。VBA WebScraping如何從下拉框中選擇值

Sub extract_data_from_MonsterIndia() 

    Dim objIE     As Object 
    Dim myjobtype    As String 
    Dim myexperience   As Integer 
    Dim mycity     As String 
    Dim r      As Integer 
    Dim c      As Integer 

    Set objIE = CreateObject("InternetExplorer.Application") 

    myjobtype = "VBA Developer" 
    myexperience = "5" 
    mycity = "Delhi/NCR" 

    With objIE 
     .Visible = True 
     .Navigate ("http://www.monsterindia.com") 

     While .ReadyState <> 4 
      DoEvents 
     Wend 

     .Document.getelementsbyname("fts").Item.innerText = myjobtype 
     .Document.getelementsbyname("exp").Item(0).innerText = myexperience 'This line is not working 
     .Document.getelementsbyname("lmy").Item.innerText = mycity 
     .Document.getelementsbyname("submit")(0).Click 

     Do While .ReadyState <> 4 Or .Busy: DoEvents: Loop 

    End With 

    objIE.Quit 
    Set objIE = Nothing 


End Sub 

回答

0

嘗試

.Document.getelementbyid("selExp").InnerText = "n" 
.Document.getelementbyid("selExp_val").Value = "n" 

Relevant DOM

在這種情況下,我們沒有實際處理典型的 '下拉' 菜單<select>標籤。該菜單使用一系列選項和一些DOM操作來存儲<input>標記值屬性中的值。因此,我們可以簡單地修改該標籤下的值屬性。

我發佈的代碼使用標籤的id(應該只有一個id),我們使用.value來操作該特定元素的value屬性。

編輯的innerText是沒有明確必要的,因爲它是膚淺的(服務器很可能不會接收或使用該資料)

+0

嗨, 感謝重播,但它不能正常工作,給我一個錯誤信息「對象不支持此屬性或方法。」 謝謝 Kashif – Kashif

+0

我更新了代碼。請讓我知道這對你有沒有用。我認爲我第一次以某種方式看它時誤解了DOM。 –

+0

嗨Code G, 非常感謝你,它工作正常。 很多很多感謝你:) 謝謝 Kashif – Kashif

相關問題