@@ -60,15 +60,15 @@ def test_crawl():
60
60
61
61
subcategories = {
62
62
"subCategories" : [
63
- {"url" : subcategory_urls [0 ]},
64
- {"url" : subcategory_urls [1 ]},
63
+ {"url" : subcategory_urls [0 ], "metadata" : { "probability" : 0.95 } },
64
+ {"url" : subcategory_urls [1 ], "metadata" : { "probability" : 0.78 } },
65
65
],
66
66
}
67
67
nextpage = {"nextPage" : {"url" : nextpage_url }}
68
68
items = {
69
69
"items" : [
70
- {"url" : item_urls [0 ]},
71
- {"url" : item_urls [1 ]},
70
+ {"url" : item_urls [0 ], "metadata" : { "probability" : 0.99 } },
71
+ {"url" : item_urls [1 ], "metadata" : { "probability" : 0.83 } },
72
72
],
73
73
}
74
74
@@ -86,8 +86,10 @@ def test_crawl():
86
86
assert len (requests ) == 2
87
87
assert requests [0 ].url == subcategory_urls [0 ]
88
88
assert requests [0 ].callback == spider .parse_navigation
89
+ assert requests [0 ].priority == 95
89
90
assert requests [1 ].url == subcategory_urls [1 ]
90
91
assert requests [1 ].callback == spider .parse_navigation
92
+ assert requests [1 ].priority == 78
91
93
92
94
# subcategories + nextpage
93
95
navigation = ProductNavigation .from_dict (
@@ -102,6 +104,7 @@ def test_crawl():
102
104
urls = {request .url for request in requests }
103
105
assert urls == {* subcategory_urls , nextpage_url }
104
106
assert all (request .callback == spider .parse_navigation for request in requests )
107
+ assert [request .priority for request in requests ] == [100 , 95 , 78 ]
105
108
106
109
# subcategories + nextpage + items
107
110
navigation = ProductNavigation .from_dict (
@@ -120,6 +123,7 @@ def test_crawl():
120
123
assert request .callback == spider .parse_product
121
124
else :
122
125
assert request .callback == spider .parse_navigation
126
+ assert [request .priority for request in requests ] == [199 , 183 , 100 , 95 , 78 ]
123
127
124
128
# nextpage + items
125
129
navigation = ProductNavigation .from_dict (
@@ -137,6 +141,7 @@ def test_crawl():
137
141
assert requests [1 ].callback == spider .parse_product
138
142
assert requests [2 ].url == nextpage_url
139
143
assert requests [2 ].callback == spider .parse_navigation
144
+ assert [request .priority for request in requests ] == [199 , 183 , 100 ]
140
145
141
146
# subcategories + items
142
147
navigation = ProductNavigation .from_dict (
@@ -156,6 +161,7 @@ def test_crawl():
156
161
assert requests [2 ].callback == spider .parse_navigation
157
162
assert requests [3 ].url == subcategory_urls [1 ]
158
163
assert requests [3 ].callback == spider .parse_navigation
164
+ assert [request .priority for request in requests ] == [199 , 183 , 95 , 78 ]
159
165
160
166
# nextpage
161
167
navigation = ProductNavigation .from_dict (
@@ -168,6 +174,7 @@ def test_crawl():
168
174
assert len (requests ) == 1
169
175
assert requests [0 ].url == nextpage_url
170
176
assert requests [0 ].callback == spider .parse_navigation
177
+ assert [request .priority for request in requests ] == [100 ]
171
178
172
179
# items
173
180
navigation = ProductNavigation .from_dict (
@@ -182,6 +189,7 @@ def test_crawl():
182
189
assert requests [0 ].callback == spider .parse_product
183
190
assert requests [1 ].url == item_urls [1 ]
184
191
assert requests [1 ].callback == spider .parse_product
192
+ assert [request .priority for request in requests ] == [199 , 183 ]
185
193
186
194
# Test parse_navigation() behavior on pagination_only crawl strategy.
187
195
spider = EcommerceSpider (
0 commit comments