質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Chrome

Google Chromeは携帯、テレビ、デスクトップなどの様々なプラットフォームで利用できるウェブブラウザです。Googleが開発したもので、Blink (レンダリングエンジン) とアプリケーションフレームワークを使用しています。

selenium

Selenium(セレニウム)は、ブラウザをプログラムで作動させるフレームワークです。この原理を使うことにより、ブラウザのユーザーテストなどを自動化にすることができます。

Q&A

解決済

1回答

1475閲覧

ExcelVBAにてテーブルの値が途中までしか取得できない。

sobue

総合スコア329

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Chrome

Google Chromeは携帯、テレビ、デスクトップなどの様々なプラットフォームで利用できるウェブブラウザです。Googleが開発したもので、Blink (レンダリングエンジン) とアプリケーションフレームワークを使用しています。

selenium

Selenium(セレニウム)は、ブラウザをプログラムで作動させるフレームワークです。この原理を使うことにより、ブラウザのユーザーテストなどを自動化にすることができます。

0グッド

0クリップ

投稿2020/04/25 13:14

編集2020/04/27 06:57

環境
Windows10 Home 64bit
Chrome: 81.0.4044.122(Official Build) (64 ビット)
Excel2010 64bit
selenium

取得元HPのスクレイピングをしようとしています。
取得元HP

VBA

1 Dim tableElement As Variant 2 For Each tableElement In driver.FindElementByXPath("//*[@id=""product-detail-wrap""]/div[2]/div/div[3]/div/table").FindElementsByTag("tr") 3 tableRow = tableRow + 1 4 If (tableRow <> 1) Then 5 targetRow = targetRow + 1 6 Debug.Print tableElement.FindElementsByTag("th")(1).Text 7 Debug.Print tableElement.FindElementsByTag("td")(1).Text 8 Debug.Print tableElement.FindElementsByTag("td")(2).Text 9 Debug.Print tableElement.FindElementsByTag("td")(3).Text 10 Debug.Print tableElement.FindElementsByTag("td")(4).Text 11 Debug.Print tableElement.FindElementsByTag("td")(5).Text 12 Debug.Print tableElement.FindElementsByTag("td")(6).Text 13 Debug.Print tableElement.FindElementsByTag("td")(7).Text 14 End If 15 Next tableElement

以下が、実現できなかったので参考にしたページです。
参考HP

driver.FindElementByXPath("//*[@id=""product-detail-wrap""]/div[2]/div/div[3]/div/table").FindElementsByTag("tr")
を参考HPの「tbl.ToExcel [Sheet1]」のようにExcel出力を行うとテーブル値すべてが取得できますが、上記のソースですとtrの2行目までしか取得できません。

ほかの調べ方などが思いつかないため、お手数ですが、ご教示お願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

coco_bauer

2020/04/27 05:38

「trの2行目まで」って、どんなWebページの話なんですか? 質問に二つのリンクがありますが、これらのリンクと、質問の内容は、どんな関係にあるのですか?
sobue

2020/04/27 06:59

質問を修正しました。 Webページは、取得元HPのリンクです。 参考HPは、やりたいことが実現できなかった為参考にしたHPです。
guest

回答1

0

自己解決

取得したいTableに<tr>が2つしかなかったためでした。

お手数おかけいたしました。

投稿2021/08/22 03:28

sobue

総合スコア329

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問