質問編集履歴

2

誤字

2021/05/23 06:11

投稿

2019
2019

スコア9

test CHANGED
File without changes
test CHANGED
@@ -40,11 +40,11 @@
40
40
 
41
41
  wait.until do
42
42
 
43
- list = driver.find_elements(:xpath, "//*[@id='itemList']/div[@class='litem'])
43
+ list = driver.find_elements(:xpath, "//*[@id='itemList']/div[@class='item'])
44
44
 
45
- names = list.map |data|
45
+ names = list.map |item|
46
46
 
47
- data.find_element(:xpath, "//a/span[1]").text
47
+ item.find_element(:xpath, "//a/span[2]")&.text
48
48
 
49
49
  end
50
50
 
@@ -58,9 +58,9 @@
58
58
 
59
59
  i = 1
60
60
 
61
- while i <= 5 do
61
+ while i <= 5
62
62
 
63
-  name = wait.until{ driver.find_element(:xpath, "//*[@id='itemList']/div[@class='litem'][#{i}]/a/span[1]")&.text }
63
+  wait.until{ driver.find_element(:xpath, "//*[@id='itemList']/div[#{i+1}]/a/span[2]")&.text }
64
64
 
65
65
  i += 1
66
66
 
@@ -72,27 +72,35 @@
72
72
 
73
73
  ```html
74
74
 
75
- <div class="itemList">
75
+ <div id="itemList">
76
76
 
77
- <div class="litem">
77
+ <div>〜〜〜</div>
78
78
 
79
- <a>
79
+ <div class="item">
80
80
 
81
- <span>〜〜</span><span>〜〜</span>
81
+ <a>
82
82
 
83
- </a>
83
+ <span>商品ID</span>
84
84
 
85
- </div>
85
+ <span>商品名</span>
86
86
 
87
- <div class="litem">
87
+ </a>
88
88
 
89
- <a>
89
+ </div>
90
90
 
91
- <span>〜〜</span><span>〜〜</span>
91
+ <div class="item">
92
92
 
93
- </a>
93
+ <a>
94
94
 
95
+ <span>商品ID</span>
96
+
97
+ <span>商品名</span>
98
+
99
+ </a>
100
+
95
- </div>
101
+ </div>
102
+
103
+ ・・・
96
104
 
97
105
  </div>
98
106
 
@@ -104,7 +112,7 @@
104
112
 
105
113
  ・パターン1については、
106
114
 
107
- 変数listに一時代入してますが、litemクラスのdiv以下の階層構造を取得する前に代入してしまい、
115
+ 変数listに一時代入してますが、itemクラスのdiv以下の階層構造を取得する前に代入してしまい、
108
116
 
109
117
   それをmapしているため、dataに対して、find_elementした際に、エラーになるのでは思われます。
110
118
 

1

記述ミスの修正

2021/05/23 06:11

投稿

2019
2019

スコア9

test CHANGED
File without changes
test CHANGED
@@ -62,6 +62,8 @@
62
62
 
63
63
   name = wait.until{ driver.find_element(:xpath, "//*[@id='itemList']/div[@class='litem'][#{i}]/a/span[1]")&.text }
64
64
 
65
+ i += 1
66
+
65
67
  end
66
68
 
67
69
  ```