Excel VBA質問箱 IV

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

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


1132 / 76734 ←次へ | 前へ→

【81257】VBA スクレイピングについて
質問  さくら E-MAIL  - 20/4/16(木) 17:12 -

引用なし
パスワード
   はじめまして。
現在会社の課題としてエクセルVBAを使用し、スクレイピングをしております。

どれだけ調べても解決することができなく、
ご教授頂ければと思いこちらを使わせていただきました。

以下のコードまで作成したのですが、
.getElementsByClassNameで取得した情報100件をExcelのA2から表示させたいです。
Debug.Printでイミディエイトには出力した情報100件は表示されているのですが
どこをどうすればセルに出力させるのかがわかりません。

そのほか修正すべき点があればこちらも教えていただきたいです。
宜しくお願い致します。

ーーーーーーーーーーーーーー

'IEを開く
 
  Dim objIE As InternetExplorer 'IEオブジェクトを準備
  Set objIE = CreateObject("Internetexplorer.Application")
  objIE.Visible = True 'True:IEを表示 , False:IEを非表示

'URLを指定
  Dim strOpenURL As String  'URL
  strOpenURL = "URL" 
  objIE.navigate strOpenURL '指定したURLを開く
  
'画面が表示されるまで少し待つ
  Do While objIE.Busy = True Or objIE.readyState < READYSTATE_COMPLETE
    DoEvents
  Loop  

'インデックス1番目のシート
  Dim sht As Worksheet
  Set sht = Worksheets(1)

'WorksheetのSetting
  Dim j As Integer
  j = 0
  sht.Cells(1, 1).Value = "企業名"       'A1の項目名
  sht.Cells(1, 2).Value = "住所"        'B1の項目名
  sht.Cells(1, 3).Value = "電話番号"      'C1の項目名
  sht.Cells(1, 4).Value = "メールアドレス"   'D1の項目名

'画面のデータの取得
  Dim htmlDoc As HTMLDocument
  Set htmlDoc = objIE.document
  
'各企業のURLを取得
'
  Dim anchor As HTMLAnchorElement
  For Each anchor In htmlDoc.getElementsByClassName("ts-h-search-cassetteTitleMain js-h-search-cassetteTitleMain")
    Debug.Print anchor.href
    
  Next anchor
  
  objIE.Quit
4 hits

【81257】VBA スクレイピングについて さくら 20/4/16(木) 17:12 質問[未読]
【81258】Re:VBA スクレイピングについて γ 20/4/16(木) 19:13 発言[未読]

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