前提・実現したいこと
このページ
Wikipedia:全言語版の統計
の、
「備考」の「新規開設」のところを持ってきて、Excelに一覧表にしたいです。
こんな感じ(別にこの形でなくてはいけない、ということではなくて、データをまるっとExcelに持ってきたいということです)
該当のソースコード
ここまでは書きました。
VBA
1 Dim objIE As InternetExplorer 2 Set objIE = CreateObject("Internetexplorer.Application") 3 objIE.Visible = True 4 5 'Wikipedia:全言語版の統計 6 objIE.navigate "https://ja.wikipedia.org/wiki/Wikipedia:%E5%85%A8%E8%A8%80%E8%AA%9E%E7%89%88%E3%81%AE%E7%B5%B1%E8%A8%88" 7 8 9 Do While objIE.Busy = True Or objIE.readyState < READYSTATE_COMPLETE 10 DoEvents 11 Loop 12 13 14 Dim UList As HTMLDocument 15 Set UList = objIE.document.getElementById("mw-content-text").all.tags("div")(0).all.tags("dl")(0).all.tags("ul")(0)
該当の「新規開設」のところのULリストの箇所のHTMLをまるごとオブジェクトにして変数UListに格納したところまでです。
UList.outerHTMLを見ると
text
1<ul><li>2019年 2<ul><li>4月4日 - <a title="西アルメニア語" href="/wiki/%E8%A5%BF%E3%82%A2%E3%83%AB%E3%83%A1%E3%83%8B%E3%82%A2%E8%AA%9E">西アルメニア語</a> (<a title="hyw:" class="extiw" href="https://hyw.wikipedia.org/wiki/">hyw:</a>)</li></ul></li> 3<li>2018年 4<ul><li>11月14日 - <a title="シャン語" href="/wiki/%E3%82%B7%E3%83%A3%E3%83%B3%E8%AA%9E">シャン語</a> (<a title="shn:" class="extiw" href="https://shn.wikipedia.org/wiki/">shn:</a>)</li> 5<li>8月2日 - <a title="サンタル語" href="/wiki/%E3%82%B5%E3%83%B3%E3%82%BF%E3%83%AB%E8%AA%9E">サンタル語</a> (<a title="sat:" class="extiw" href="https://sat.wikipedia.org/wiki/">sat:</a>)</li> 6<li>4月18日 - <a title="イングーシ語" href="/wiki/%E3%82%A4%E3%83%B3%E3%82%B0%E3%83%BC%E3%82%B7%E8%AA%9E">イングーシ語</a> (<a title="inh:" class="extiw" href="https://inh.wikipedia.org/wiki/">inh:</a>)</li> 7<li>4月18日 - <a title="ゴロンタロ語" href="/wiki/%E3%82%B4%E3%83%AD%E3%83%B3%E3%82%BF%E3%83%AD%E8%AA%9E">ゴロンタロ語</a> (<a title="gor:" class="extiw" href="https://gor.wikipedia.org/wiki/">gor:</a>)</li> 8<li>4月18日 - <a title="リングア・フランカ・ノバ" href="/wiki/%E3%83%AA%E3%83%B3%E3%82%B0%E3%82%A2%E3%83%BB%E3%83%95%E3%83%A9%E3%83%B3%E3%82%AB%E3%83%BB%E3%83%8E%E3%83%90">リングア・フランカ・ノバ</a> (<a title="lfn:" class="extiw" href="https://lfn.wikipedia.org/wiki/">lfn:</a>)</li></ul></li> 9<li>2017年 10<ul><li>7月5日 - <a title="ディンカ語" href="/wiki/%E3%83%87%E3%82%A3%E3%83%B3%E3%82%AB%E8%AA%9E">ディンカ語</a> (<a title="din:" class="extiw" href="https://din.wikipedia.org/wiki/">din:</a>)</li> 11<li>6月24日 - <a title="カビエ語" href="/wiki/%E3%82%AB%E3%83%93%E3%82%A8%E8%AA%9E">カビエ語</a> (<a title="kbp:" class="extiw" href="https://kbp.wikipedia.org/wiki/">kbp:</a>)</li> 12<li>6月21日 - <a title="アティカメク語" href="/wiki/%E3%82%A2%E3%83%86%E3%82%A3%E3%82%AB%E3%83%A1%E3%82%AF%E8%AA%9E">アティカメク語</a> (<a title="atj:" class="extiw" href="https://atj.wikipedia.org/wiki/">atj:</a>)</li> 13<li>4月24日 - <a title="ドテリ語" href="/wiki/%E3%83%89%E3%83%86%E3%83%AA%E8%AA%9E">ドテリ語</a> (<a title="dty:" class="extiw" href="https://dty.wikipedia.org/wiki/">dty:</a>)</li></ul></li> 14<li>2016年 15<ul><li>10月7日 - <a title="リッヴィ語" href="/wiki/%E3%83%AA%E3%83%83%E3%83%B4%E3%82%A3%E8%AA%9E">リッヴィ語</a> (<a title="olo:" class="extiw" href="https://olo.wikipedia.org/wiki/">olo:</a>)</li> 16<li>8月4日 - <a title="トゥル語" href="/wiki/%E3%83%88%E3%82%A5%E3%83%AB%E8%AA%9E">トゥル語</a>版 (<a title="tcy:" class="extiw" href="https://tcy.wikipedia.org/wiki/">tcy:</a>)</li> 17<li>5月2日 - <a title="ジャマイカ・クレオール語" href="/wiki/%E3%82%B8%E3%83%A3%E3%83%9E%E3%82%A4%E3%82%AB%E3%83%BB%E3%82%AF%E3%83%AC%E3%82%AA%E3%83%BC%E3%83%AB%E8%AA%9E">ジャマイカ・クレオール語</a>版 (<a title="jam:" class="extiw" href="https://jam.wikipedia.org/wiki/">jam:</a>)</li> 18<li>2月11日 - <a title="アディゲ語" href="/wiki/%E3%82%A2%E3%83%87%E3%82%A3%E3%82%B2%E8%AA%9E">アディゲ語</a>版 (<a title="ady:" class="extiw" href="https://ady.wikipedia.org/wiki/">ady:</a>)</li></ul></li> 19<li>2015年 20<ul><li>7月22日 - <a title="南アゼルバイジャン語" href="/wiki/%E5%8D%97%E3%82%A2%E3%82%BC%E3%83%AB%E3%83%90%E3%82%A4%E3%82%B8%E3%83%A3%E3%83%B3%E8%AA%9E">南アゼルバイジャン語</a>版 (<a title="azb:" class="extiw" href="https://azb.wikipedia.org/wiki/">azb:</a>)</li> 21<li>6月16日 - <a title="ゴア・コンカニ語" href="/wiki/%E3%82%B4%E3%82%A2%E3%83%BB%E3%82%B3%E3%83%B3%E3%82%AB%E3%83%8B%E8%AA%9E">ゴア・コンカニ語</a>版 (<a title="gom:" class="extiw" href="https://gom.wikipedia.org/wiki/">gom:</a>), <a title="北ロル語" href="/wiki/%E5%8C%97%E3%83%AD%E3%83%AB%E8%AA%9E">北ロル語</a>版 (<a title="lrc:" class="extiw" href="https://lrc.wikipedia.org/wiki/">lrc:</a>)</li></ul></li> 22<li>2014年 23<ul><li>11月6日 - <a title="マイティリー語" href="/wiki/%E3%83%9E%E3%82%A4%E3%83%86%E3%82%A3%E3%83%AA%E3%83%BC%E8%AA%9E">マイティリー語</a>版 (<a title="mai:" class="extiw" href="https://mai.wikipedia.org/wiki/">mai:</a>)</li></ul></li> 24<li>2013年 25<ul><li>8月11日 - <a title="トゥバ語" href="/wiki/%E3%83%88%E3%82%A5%E3%83%90%E8%AA%9E">トゥバ語</a>版 (<a title="tyv:" class="extiw" href="https://tyv.wikipedia.org/wiki/">tyv:</a>)</li> 26<li>2月6日 - <a title="ミナンカバウ語" href="/wiki/%E3%83%9F%E3%83%8A%E3%83%B3%E3%82%AB%E3%83%90%E3%82%A6%E8%AA%9E">ミナンカバウ語</a>版 (<a title="min:" class="extiw" href="https://min.wikipedia.org/wiki/">min:</a>)</li></ul></li> 27<li>2012年 28<ul><li>3月27日 - <a title="レズギ語" href="/wiki/%E3%83%AC%E3%82%BA%E3%82%AE%E8%AA%9E">レズギ語</a>版 (<a title="lez:" class="extiw" href="https://lez.wikipedia.org/wiki/">lez:</a>)</li> 29<li>2月1日 - <a title="ヴェプス語" href="/wiki/%E3%83%B4%E3%82%A7%E3%83%97%E3%82%B9%E8%AA%9E">ヴェプス語</a>版 (<a title="vep:" class="extiw" href="https://vep.wikipedia.org/wiki/">vep:</a>)</li></ul></li> 30<li>2011年 31<ul><li>10月29日 - <a title="北ソト語" href="/wiki/%E5%8C%97%E3%82%BD%E3%83%88%E8%AA%9E">北ソト語</a>版 (<a title="nso:" class="extiw" href="https://nso.wikipedia.org/wiki/">nso:</a>)</li> 32<li>7月12日 - <a title="メグレル語" href="/wiki/%E3%83%A1%E3%82%B0%E3%83%AC%E3%83%AB%E8%AA%9E">メグレル語</a>版 (<a title="xmf:" class="extiw" href="https://xmf.wikipedia.org/wiki/">xmf:</a>)</li> 33<li>3月18日 - <a title="ラトガリア語" href="/wiki/%E3%83%A9%E3%83%88%E3%82%AC%E3%83%AA%E3%82%A2%E8%AA%9E">ラトガリア語</a>版 (<a title="ltg:" class="extiw" href="https://ltg.wikipedia.org/wiki/">ltg:</a>), <a title="カバルド語" href="/wiki/%E3%82%AB%E3%83%90%E3%83%AB%E3%83%89%E8%AA%9E">カバルド語</a>版 (<a title="kbd:" class="extiw" href="https://kbd.wikipedia.org/wiki/">kbd:</a>)</li> 34<li>1月23日 - <a title="ルシン語" href="/wiki/%E3%83%AB%E3%82%B7%E3%83%B3%E8%AA%9E">ルシン語</a>版 (<a title="rue:" class="extiw" href="https://rue.wikipedia.org/wiki/">rue:</a>)</li></ul></li> 35<li>2010年 36<ul><li>11月13日 - <a title="ガガウズ語" href="/wiki/%E3%82%AC%E3%82%AC%E3%82%A6%E3%82%BA%E8%AA%9E">ガガウズ語</a>版 (<a title="gag:" class="extiw" href="https://gag.wikipedia.org/wiki/">gag:</a>), <a title="プファルツ語" href="/wiki/%E3%83%97%E3%83%95%E3%82%A1%E3%83%AB%E3%83%84%E8%AA%9E">プファルツ語</a>版 (<a title="pfl:" class="extiw" href="https://pfl.wikipedia.org/wiki/">pfl:</a>)</li> 37<li>10月17日 - <a title="コミ・ペルミャク語" href="/wiki/%E3%82%B3%E3%83%9F%E3%83%BB%E3%83%9A%E3%83%AB%E3%83%9F%E3%83%A3%E3%82%AF%E8%AA%9E">コミ・ペルミャク語</a>版 (<a title="koi:" class="extiw" href="https://koi.wikipedia.org/wiki/">koi:</a>), <a title="バンジャル語" href="/wiki/%E3%83%90%E3%83%B3%E3%82%B8%E3%83%A3%E3%83%AB%E8%AA%9E">バンジャル語</a>版 (<a title="bjn:" class="extiw" href="https://bjn.wikipedia.org/wiki/">bjn:</a>), <a title="山地マリ語" href="/wiki/%E5%B1%B1%E5%9C%B0%E3%83%9E%E3%83%AA%E8%AA%9E">山地マリ語</a>版 (<a title="mrj:" class="extiw" href="https://mrj.wikipedia.org/wiki/">mrj:</a>)</li> 38<li>8月19日 - <a title="北フリジア語" href="/wiki/%E5%8C%97%E3%83%95%E3%83%AA%E3%82%B8%E3%82%A2%E8%AA%9E">北フリジア語</a>版 (<a title="frr:" class="extiw" href="https://frr.wikipedia.org/wiki/">frr:</a>)</li> 39<li>3月21日 - <a title="カラチャイ・バルカル語" href="/wiki/%E3%82%AB%E3%83%A9%E3%83%81%E3%83%A3%E3%82%A4%E3%83%BB%E3%83%90%E3%83%AB%E3%82%AB%E3%83%AB%E8%AA%9E">カラチャイ・バルカル語</a>版 (<a title="krc:" class="extiw" href="https://krc.wikipedia.org/wiki/">krc:</a>)</li></ul></li></ul>
となっているので、ここまでは正常に格納されているようなのです。
ここから、<li>タグ内のinnerTextもしくはinnerHTMLを順に拾っていけばいいのですよね?
なので、まず<li>タグのリストを得ようと
VBA
1 Dim allLIs As Object 2 allLIs = UList.all.tags("li")
と書いたら、実行時エラー438で止まります。
つまり、変数UListに対してHTMLタグで検索することができない、ということ……?
とりあえず、<li>タグのリストを得るにはどう書いたらいいのでしょうか?UListのデータ型がわるい?
補足情報(FW/ツールのバージョンなど)
Windows10、Excel2016、IE11です。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/10/28 23:07