EXCEL VBAを勉強中でWEBから情報収集をしようとしています。色々探しましたがイメージができず、コードもまだの状態で恐縮ですが、お力を貸していただけたらと思います。
###不明点
HTMLソースから特定商品の順位を拾ってくるためにどのようにプログラムを組むのか?(考え方?)
###考えたこと
・特定classタグ(<div class="product_img">など)を抽出し、何番目かを確認する
(何番目かを確認する関数?が見つけきれませんでした。)
・ソースを取得→商品名を探す→親要素へたどる→何番目かを確認する?という流れでしょうか? それとも他にいい方法がありますか?
勉強中の今の自分には難しいレベルとは思っていますが、ググるにしてもキーワードがわからずうまくヒットしない→時間がかかっている状況です。
この関数?を使うなどのアドバイスでかまいません。プロの方々がどのように考えるのか、この辺りで調べてみたらなど教えていただけますと幸いです。
###作成イメージ
サイトで、特定商品が人気順 or 新着順で上から何番目にいるのかを知りたい。商品は100以上あり、ループで処理する予定です。
特定ブランド × 特定カテゴリーの人気順で、特定商品が上から何番目にいるのかを確認する。
↓
もし上記で見当たらなければ特定ブランド × 特定カテゴリーの新着順で、上から何番目にいるのかを確認する。
例
view-source:https://www.buyma.com/r/_YVES-SAINT-LAURENT-%E3%82%A4%E3%83%B4%E3%82%B5%E3%83%B3%E3%83%AD%E3%83%BC%E3%83%A9%E3%83%B3/-C2205/
この一覧から、特定商品の商品タイトルを検索し、上から何番目かを数値として返す。
出品されている商品1つのHTML構成は以下のとおりです。
`<div class="product_img"> <a href="/item/30900049/" class="js-track-search-action" data-action="view_item" data-item-id="30900049" data-page="1" data-rank="1"> <img alt="SAINT LAURENT シティ パッチ バックパック 467985GKQH6" src="https://static-buyma-com.akamaized.net/imgdata/item/170904/0030900049/121443730/210.jpg" /> </a> </div> <div class="product_body"> <div class="product_name"> <a href="/item/30900049/" class="js-track-search-action" data-action="view_item" data-item-id="30900049" data-page="1" data-rank="1">SAINT LAURENT シティ パッチ バックパック 467985GKQH6</a> </div> <div class="product_price"> <span class="price_reference">¥160,920</span> <span class="font_85"></span> <span class="Price_Txt">¥105,800</span> <span class="Price_Percent">34%OFF</span> </div><!-- .product_price --> <div class="product_Brand"> <div class="result__oneitem-brandlink-bg"> <a href="/brand/YVES_SAINT_LAURENT_%E3%82%A4%E3%83%B4%E3%82%B5%E3%83%B3%E3%83%AD%E3%83%BC%E3%83%A9%E3%83%B3.html" class="brandname">Saint Laurent</a> <div item-id="30900049" brand-name-eigo="Saint+Laurent" class="result__oneitem-brandlinkwrap"> <i class="fab-icon fab-icon-arrow-down--s result__oneitem-brandlink"></i> </div> </div> <div class="brandexp" id="brandexp-item-30900049" data-brand-id='342'><span>i</span></div> </div> <div id="result__oneitem-popup-30900049" item-id="30900049" class="result__oneitem-popupwrap" style="display: none"> <div class="result__oneitem-popup"> <div class="result__popup-content"> <p class=""><i class="fab-icon fab-icon-search fab-design-mg--r5"></i><a href="/r/-C2205/" onClick="javascript:pageTracker._trackEvent('PC検索結果', 'ブランドコンテキストメニュー/このブランドを条件から外す', 'Saint+Laurent');">このブランドを条件から外す</a></p> </div> <div class="popup-arrow"></div> </div> </div> <div class="product_Buyer"> <a href="/buyer/644288.html">candylovecath</a> </div><!-- product_Buyer --> <div class="fab-design-of--h"> <span class="product-status--premium"> <a href="http://help.buyma.com/useful/1016/" class="product_PrebuyerLabel" target="_blank">PREMIUM</a> </span> <span class="product-status--itemreturn tips" title="送料込の価格表示です。">送料込</span> </div> </div><!-- .product_body --> </li><!-- .product --> <li item-id="29911265" class="product "> <div class="product_Action" item-url="/item/29911265/"> <div class="ActBt"> <a href="" item-id="29911265" class="MoreBtn js-track-search-action" data-action="look_item", data-item-id="29911265" data-page="1" data-rank="2"> <span class="n_search_iconset Icon_quickview"></span><br />LOOK </a> <a href="" item-id="29911265" class="WishBtn js-track-search-action" data-action="add_fav", data-item-id="29911265" data-page="1" data-rank="2"> <span class="n_search_iconset Icon_Wish"></span><br />WISH </a> </div> </div><!-- .product_Action -->`
###参考にしたサイト
https://www.vba-ie.net/
http://www.ken3.org/cgi-bin/group/vba_ie.asp
http://vbabeginner.net/vba%E3%81%A7%E9%85%8D%E5%88%97%E3%81%AB%E6%8C%87%E5%AE%9A%E6%96%87%E5%AD%97%E5%88%97%E3%81%8C%E5%AD%98%E5%9C%A8%E3%81%99%E3%82%8B%E4%BD%8D%E7%BD%AE%E3%82%92%E8%AA%BF%E3%81%B9%E3%82%8B/
http://officetanaka.net/excel/vba/variable/08.htm
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/10/06 04:16