質問編集履歴
4
コードを修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -7,6 +7,8 @@
|
|
7
7
|
|
8
8
|
|
9
9
|
```ruby
|
10
|
+
|
11
|
+
keyword = [ファッション ブログ,ファッション 女性]
|
10
12
|
|
11
13
|
driver.navigate.to("https://search.yahoo.co.jp/search?p=ファッション+ブログ")
|
12
14
|
|
3
実際のコードを入力
test
CHANGED
File without changes
|
test
CHANGED
@@ -2,17 +2,71 @@
|
|
2
2
|
|
3
3
|
|
4
4
|
|
5
|
-
|
5
|
+
yahooで「ファッション ブログ」で検索した時に表示されるタイトル(<h3>)に「ファッション」、「ブログ」の両方が含まれるタイトルの数を取りたいと思っております。
|
6
6
|
|
7
|
-
array = ["あいうえおか","かきくけこ","さしすせそか","たちつてと"]
|
8
7
|
|
9
|
-
があった時に
|
10
8
|
|
11
|
-
|
9
|
+
```ruby
|
12
10
|
|
13
|
-
|
11
|
+
driver.navigate.to("https://search.yahoo.co.jp/search?p=ファッション+ブログ")
|
14
12
|
|
13
|
+
h3 = driver.find_element(:id, 'WS2m').find_elements(:tag_name, 'h3')
|
14
|
+
|
15
|
+
titles = []
|
16
|
+
|
17
|
+
for i in 0..h3.count - 1
|
18
|
+
|
19
|
+
titles << h3[i].text
|
20
|
+
|
21
|
+
end
|
22
|
+
|
23
|
+
words = keyword[0].split(" ")
|
24
|
+
|
25
|
+
matched_count = 0
|
26
|
+
|
27
|
+
matched_title_count = 0
|
28
|
+
|
29
|
+
for i in 0..titles.count - 1
|
30
|
+
|
31
|
+
for x in 0..words.count - 1
|
32
|
+
|
33
|
+
if titles[i].include?(words[x])
|
34
|
+
|
15
|
-
|
35
|
+
matched_count += 1
|
36
|
+
|
37
|
+
end
|
38
|
+
|
39
|
+
end
|
40
|
+
|
41
|
+
if matched_count == words.count
|
42
|
+
|
43
|
+
matched_title_count += 1
|
44
|
+
|
45
|
+
end
|
46
|
+
|
47
|
+
end
|
48
|
+
|
49
|
+
```
|
50
|
+
|
51
|
+
|
52
|
+
|
53
|
+
こう書いたのですが、matched_title_countは1となってしまいます。
|
54
|
+
|
55
|
+
実際の取得したタイトルは、
|
56
|
+
|
57
|
+
```ruby
|
58
|
+
|
59
|
+
titles = ["ファッション by AmebaGG | Ameba(アメーバ)人気ブログランキング", "ファッションブログランキング|Ameba (アメーバ)", "いつたけオフィシャルブログ「ARIGATO」Powered by Ameba", "yokoオフィシャルブログ「プチプラコーデ術」Po
|
60
|
+
|
61
|
+
wered by Ameba", "40代ファッション - 人気ブログランキング", "ファッションブログ人気ランキング - ファッションブログ村 人気ブログ ...", "ファッションブログランキング - ファッション・ブランド・アクセサリー村", "大人カジュア
|
62
|
+
|
63
|
+
ル系 - ファッションブログ村", "ファッション|人気ブログランキング - 楽天ブログ", "50代になっても 洋服好き主婦のファッションブログ"]
|
64
|
+
|
65
|
+
```
|
66
|
+
|
67
|
+
|
68
|
+
|
69
|
+
なので、1件のみのヒットでは無いはずなのですが、理由がわかりません。
|
16
70
|
|
17
71
|
|
18
72
|
|
2
言語を追加
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,3 +1,7 @@
|
|
1
|
+
rubyでの質問になります。
|
2
|
+
|
3
|
+
|
4
|
+
|
1
5
|
配列として
|
2
6
|
|
3
7
|
array = ["あいうえおか","かきくけこ","さしすせそか","たちつてと"]
|
1
変数名と変数名を追加しました。
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,10 +1,12 @@
|
|
1
1
|
配列として
|
2
2
|
|
3
|
-
["あいうえおか","かきくけこ","さしすせそか","たちつてと"]
|
3
|
+
array = ["あいうえおか","かきくけこ","さしすせそか","たちつてと"]
|
4
4
|
|
5
5
|
があった時に
|
6
6
|
|
7
|
+
str = "あ か"
|
8
|
+
|
7
|
-
|
9
|
+
という半角スペースで仕切られた文字列が↑の配列の中で一致する要素の数を取りたいと思っております。
|
8
10
|
|
9
11
|
上記の例だと一致する数は1だと思います。
|
10
12
|
|