TripAdviserのスポット一覧のURLを取得
GoogleでKeyWordを+でつなぐ+「site:www.tripadvisor.jp」で検索
→検索結果タイトル&本文にKeyWordsが含まれるもののリンク先URLを取得
Hitするものが存在しなかった場合は空文字を返す
KeyWords はスポット名 + 地域名(市区町村あたり) + ジャンル(観光/グルメ)あたりを想定
ieCheckは以下のものを使用 ついでに1秒ウェイトを入れるためのmySleep関数をここに書いてる
https://www.vba-ie.net/code/iecheck.html
Public Function getTAURL(vKeyWords As Variant) As String Dim ie As InternetExplorer: Set ie = New InternetExplorer Dim sKeyWords As String: sKeyWords = "" Dim i As Long Dim f As Boolean For i = LBound(vKeyWords) To UBound(vKeyWords) If sKeyWords <> "" Then sKeyWords = sKeyWords & "+" sKeyWords = sKeyWords & CStr(vKeyWords(i)) Next i ie.navigate "https://www.google.co.jp/search?num=100&q=" & sKeyWords & "+site%3Awww.tripadvisor.jp" Call MySleep(1000) Call ieCheck(ie) Dim el As IHTMLElement ' 地名+駅名とかにするとh3だけの評価ではだめなので、本文部分もチェックする For Each el In ie.Document.getElementsByClassName("srg")(0).getElementsByClassName("rc") f = True For i = LBound(vKeyWords) To UBound(vKeyWords) If InStr(1, el.innerText, CStr(vKeyWords(i))) = 0 Then f = False Exit For End If Next i If f Then Exit For Next el If f Then getTAURL = el.getElementsByTagName("h3")(0).getElementsByTagName("a")(0).getAttribute("href") Else getTAURL = "" End If ie.Quit End Function