rubyでの質問になります。
yahooで「ファッション ブログ」で検索した時に表示されるタイトル(<h3>)に「ファッション」、「ブログ」の両方が含まれるタイトルの数を取りたいと思っております。
ruby
1keyword = [ファッション ブログ,ファッション 女性] 2driver.navigate.to("https://search.yahoo.co.jp/search?p=ファッション+ブログ") 3h3 = driver.find_element(:id, 'WS2m').find_elements(:tag_name, 'h3') 4titles = [] 5for i in 0..h3.count - 1 6 titles << h3[i].text 7end 8words = keyword[0].split(" ") 9matched_count = 0 10matched_title_count = 0 11for i in 0..titles.count - 1 12 for x in 0..words.count - 1 13 if titles[i].include?(words[x]) 14 matched_count += 1 15 end 16 end 17 if matched_count == words.count 18 matched_title_count += 1 19 end 20end
こう書いたのですが、matched_title_countは1となってしまいます。
実際の取得したタイトルは、
ruby
1titles = ["ファッション by AmebaGG | Ameba(アメーバ)人気ブログランキング", "ファッションブログランキング|Ameba (アメーバ)", "いつたけオフィシャルブログ「ARIGATO」Powered by Ameba", "yokoオフィシャルブログ「プチプラコーデ術」Po 2wered by Ameba", "40代ファッション - 人気ブログランキング", "ファッションブログ人気ランキング - ファッションブログ村 人気ブログ ...", "ファッションブログランキング - ファッション・ブランド・アクセサリー村", "大人カジュア 3ル系 - ファッションブログ村", "ファッション|人気ブログランキング - 楽天ブログ", "50代になっても 洋服好き主婦のファッションブログ"]
なので、1件のみのヒットでは無いはずなのですが、理由がわかりません。
どなたか教えてくださいませ。よろしくお願い致します。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/03/22 04:50