Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


5589 / 76732 ←次へ | 前へ→

【76753】検索後のHTML解析
質問  Satsuki  - 15/3/9(月) 18:37 -

引用なし
パスワード
   こんにちは、Satsukiと申します。
 
プルダウンで検索後に、検索結果の総ページ数を、
検索結果ページのHTMLを解析して取得したいのですが、
上手く取得できる時と、できない時があります。
どなたかご教示のほどよろしくお願いいたします。
 
Option Explicit
 
Private objIE As InternetExplorer
 
Sub main()
  Call GetPage(2, "httpから始まるURL")
  
  If Not objIE Is Nothing Then objIE.Quit
  Set objIE = Nothing
End Sub
 
Sub GetPage(row, url)
  Call Navigate(url)
  url = SelectPulldownMenu(objIE) ←プルダウン選択後のURL取得

  Dim PageNum As String
  PageNum = getMaxPage(objIE) ←プルダウン選択後のURLでページ数取得


  (ここは未完成) 

End Sub
 
Sub Navigate(url)
  If objIE Is Nothing Then Set objIE = New InternetExplorer
  If objIE.Visible <> True Then objIE.Visible = True
  objIE.Navigate2 (url)
  While objIE.readyState <> READYSTATE_COMPLETE Or objIE.Busy = True
    DoEvents
    Sleep 100
  Wend
  Sleep 200
End Sub
 
Function SelectPulldownMenu(objIE) As String
  objIE.document.forms("color")("color_id").Value = "5"
  objIE.document.forms("color")("color_id").FireEvent ("OnChange")
  SelectPulldownMenu = objIE.LocationURL

  Call WaitFor(3)
End Sub

Function getMaxPage(objIE)
  Dim MaxPage As Integer
  MaxPage = 0
  Dim PageNum As String
  Dim objTag
 
  For Each objTag In objIE.document.getElementsByTagName("a")
    If objTag.className = "pagesu" Then
      PageNum = val(objTag.innerText)
      If PageNum > MaxPage Then
        MaxPage = PageNum
      End If
    End If
  Next
    getMaxPage = MaxPage
End Function

Function WaitFor(ByVal second As Integer)
  Dim futureTime As Date

  futureTime = DateAdd("s", second, Now)
  While Now < futureTime
    DoEvents
  Wend
End Function

242 hits

【76753】検索後のHTML解析 Satsuki 15/3/9(月) 18:37 質問[未読]
【76763】Re:検索後のHTML解析 bant 15/3/10(火) 11:29 発言[未読]
【76768】Re:検索後のHTML解析 Satsuki 15/3/10(火) 20:09 質問[未読]
【76773】Re:検索後のHTML解析 bant 15/3/11(水) 8:34 発言[未読]
【76786】Re:検索後のHTML解析 Satsuki 15/3/11(水) 23:03 質問[未読]
【76788】Re:検索後のHTML解析 bant 15/3/12(木) 11:08 発言[未読]
【76792】Re:検索後のHTML解析 Satsuki 15/3/12(木) 21:13 お礼[未読]

5589 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free