Tradeinn (tradeinn.com) scraper
Go to Store
This Actor is unavailable because the developer has decided to deprecate it. Would you like to try a similar Actor instead?
See alternative ActorsTradeinn (tradeinn.com) scraper
strajk/tradeinn-tradeinn-com-scraper
Scrapes products titles, prices, images and availability. Does NOT scrape product details.
Dockerfile
1FROM apify/actor-node:16
2
3COPY package.json ./
4
5RUN npm --quiet set progress=false \
6 && npm install --only=prod --no-optional
7
8COPY . ./
INPUT_SCHEMA.json
1{
2 "title": "Tradeinn (tradeinn.com) scraper",
3 "description": "Scrapes products titles, prices, images and availability. Does NOT scrape product details.",
4 "type": "object",
5 "schemaVersion": 1,
6 "properties": {
7 "mode": {
8 "title": "Mode",
9 "description": "",
10 "type": "string",
11 "editor": "select",
12 "default": "TEST",
13 "prefill": "TEST",
14 "enum": [
15 "TEST",
16 "CURATED",
17 "FULL"
18 ],
19 "enumTitles": [
20 "TEST",
21 "CURATED",
22 "FULL"
23 ]
24 },
25 "debug": {
26 "title": "Debug",
27 "description": "Debug mode prints more logs, disables concurrency and other optimizations.",
28 "type": "boolean",
29 "editor": "checkbox",
30 "default": false
31 },
32 "shop": {
33 "title": "Shop",
34 "description": "",
35 "type": "string",
36 "editor": "select",
37 "default": "BIKEINN",
38 "prefill": "BIKEINN",
39 "enum": [
40 "BIKEINN",
41 "DIVEINN",
42 "SNOWINN",
43 "TREKKINN",
44 "SMASHINN",
45 "SWIMINN",
46 "WAVEINN",
47 "MOTARDINN",
48 "OUTETINN",
49 "RUNNERINN",
50 "GOALINN",
51 "DRESSINN",
52 "TRAININN",
53 "XTREMEINN",
54 "KIDINN",
55 "TECHINN",
56 "BRICOINN"
57 ],
58 "enumTitles": [
59 "BIKEINN",
60 "DIVEINN",
61 "SNOWINN",
62 "TREKKINN",
63 "SMASHINN",
64 "SWIMINN",
65 "WAVEINN",
66 "MOTARDINN",
67 "OUTETINN",
68 "RUNNERINN",
69 "GOALINN",
70 "DRESSINN",
71 "TRAININN",
72 "XTREMEINN",
73 "KIDINN",
74 "TECHINN",
75 "BRICOINN"
76 ]
77 },
78 "APIFY_DONT_STORE_IN_DATASET": {
79 "sectionCaption": "Advanced",
80 "sectionDescription": "Advanced options, use only if you know what you're doing.",
81 "title": "Don't store in dataset",
82 "description": "If set to true, the actor will not store the results in the default dataset. Useful when using alternative storage, like own database",
83 "type": "boolean",
84 "default": false,
85 "editor": "checkbox"
86 },
87 "PG_CONNECTION_STRING_NORMALIZED": {
88 "title": "Postgres connection string for normalized data",
89 "description": "If set, actor will store normalized data in Postgres database in PG_DATA_TABLE and PG_DATA_PRICE_TABLE tables",
90 "type": "string",
91 "editor": "textfield"
92 },
93 "PG_DATA_TABLE": {
94 "title": "Postgres table name for product data",
95 "description": "Table name for storing product name, url, image, ...",
96 "type": "string",
97 "editor": "textfield"
98 },
99 "PG_DATA_PRICE_TABLE": {
100 "title": "Postgres table name for price data",
101 "description": "Table name for storing price, original price, stock status, ...",
102 "type": "string",
103 "editor": "textfield"
104 }
105 },
106 "required": [
107 "mode",
108 "shop"
109 ]
110}
apify.json
1{
2 "name": "tradeinn-tradeinn-com-scraper",
3 "version": "0.1",
4 "buildTag": "latest",
5 "env": null,
6 "defaultRunOptions": {
7 "build": "latest",
8 "timeoutSecs": 3600,
9 "memoryMbytes": 1024
10 }
11}
main.js
1/**
2 * Dev notes
3 * ===
4 *
5 * `https://www.tradeinn.com/bikeinn/en/${marca}/${id_marca}/m`
6 * - m - landing, no sorting
7 * - nm - all products, has sorting
8 *
9 * Spanish in a nutshell:
10 * marca = brand
11 * familia = family
12 * tienda = shop
13 * fecha_descatalogado = date_discontinued
14 * talla = size
15 * sostenible = sustainable
16 * tengo_tallas_traducidas = have_translated_sizes
17 * num_productes_actius = num_active_products
18 * baja = discontinued
19 * trobat = found
20 * pais = country
21 * enlace = link
22 * entrega = delivery
23 * divisa = currency
24 *
25 * TODO
26 * - v360
27 * - v180
28 * - v90
29 * - v30
30 *
31 * - brut
32 * - stock_reservat
33 * - desc_brand
34 * - pmp
35 * */
36
37// noinspection JSNonASCIINames,NonAsciiCharacters
38
39import { Actor } from "apify3";
40import { BasicCrawler, createBasicRouter } from "crawlee";
41import fetch from "node-fetch";
42import { init, save } from "./_utils/common.js";
43
44var MODE;
45
46(function (MODE) {
47 MODE["TEST"] = "TEST";
48 MODE["CURATED"] = "CURATED";
49 MODE["FULL"] = "FULL";
50})(MODE || (MODE = {}));
51var LABEL;
52
53(function (LABEL) {
54 LABEL["INDEX"] = "INDEX";
55 LABEL["PRODUCTS"] = "PRODUCTS";
56})(LABEL || (LABEL = {}));
57const BASE_URL = `https://www.tradeinn.com`;
58const PER_PAGE = 48;
59
60var SHOP;
61
62// TODO: Dry
63(function (SHOP) {
64 SHOP["BIKEINN"] = "BIKEINN";
65 SHOP["DIVEINN"] = "DIVEINN";
66 SHOP["SNOWINN"] = "SNOWINN";
67 SHOP["TREKKINN"] = "TREKKINN";
68 SHOP["SMASHINN"] = "SMASHINN";
69 SHOP["SWIMINN"] = "SWIMINN";
70 SHOP["WAVEINN"] = "WAVEINN";
71 SHOP["MOTARDINN"] = "MOTARDINN";
72 SHOP["OUTETINN"] = "OUTETINN";
73 SHOP["RUNNERINN"] = "RUNNERINN";
74 SHOP["GOALINN"] = "GOALINN";
75 SHOP["DRESSINN"] = "DRESSINN";
76 SHOP["TRAININN"] = "TRAININN";
77 SHOP["XTREMEINN"] = "XTREMEINN";
78 SHOP["KIDINN"] = "KIDINN";
79 SHOP["TECHINN"] = "TECHINN";
80 SHOP["BRICOINN"] = "BRICOINN";
81})(SHOP || (SHOP = {}));
82const SHOPS = {
83 DIVEINN: 1,
84 SNOWINN: 2,
85 TREKKINN: 3,
86 BIKEINN: 4,
87 SMASHINN: 5,
88 SWIMINN: 6,
89 WAVEINN: 7,
90 MOTARDINN: 8,
91 OUTETINN: 9,
92 RUNNERINN: 10,
93 GOALINN: 11,
94 DRESSINN: 12,
95 TRAININN: 13,
96 XTREMEINN: 14,
97 KIDINN: 15,
98 TECHINN: 16,
99 BRICOINN: 17,
100};
101
102const COUNTRIES = {
103 Albania: 1,
104 Algeria: 2,
105 "American Samoa": 3,
106 Andorra: 4,
107 Angola: 5,
108 Anguilla: 6,
109 Antigua: 7,
110 Argentina: 8,
111 Armenia: 9,
112 Aruba: 10,
113 Australia: 11,
114 Austria: 12,
115 Azerbaijan: 13,
116 Bahamas: 14,
117 Bahrain: 15,
118 Bangladesh: 16,
119 Barbados: 17,
120 Belarus: 18,
121 Belgium: 19,
122 Belize: 20,
123 Benin: 21,
124 Bermuda: 22,
125 Bhutan: 23,
126 Bolivia: 24,
127 Bonaire: 25,
128 "Bosnia and Herzegovina": 26,
129 Botswana: 27,
130 Brasil: 229,
131 Brunei: 29,
132 Bulgaria: 30,
133 "Burkina Faso": 31,
134 Burundi: 32,
135 Cambodia: 33,
136 Cameroon: 34,
137 Canada: 35,
138 "Cape Verde": 37,
139 "Cayman Islands": 38,
140 "Central African Republic": 39,
141 Chad: 40,
142 Chile: 41,
143 "China, People's Republic": 42,
144 Colombia: 43,
145 Comoros: 44,
146 Congo: 45,
147 "Congo, The Democratic Republic": 46,
148 "Cook Islands": 47,
149 "Costa Rica": 48,
150 "Cote d'Ivoire": 49,
151 Croatia: 50,
152 Cuba: 51,
153 Curacao: 52,
154 Cyprus: 53,
155 "Czech Republic, The": 54,
156 Denmark: 55,
157 Djibouti: 56,
158 Dominica: 57,
159 "Dominican Republic": 58,
160 Ecuador: 59,
161 Egypt: 60,
162 "El Salvador": 61,
163 "Equatorial Guinea": 62,
164 Eritrea: 63,
165 Estonia: 64,
166 Ethiopia: 65,
167 "Falkland Islands": 66,
168 "Faroe Islands": 67,
169 Fiji: 68,
170 Finland: 69,
171 France: 70,
172 "France - Corse": 228,
173 "France - Guadeloupe": 81,
174 "France - Martinique": 128,
175 "France - Reunion": 162,
176 "France - Tahiti": 194,
177 "French Guiana": 71,
178 Gabon: 72,
179 Gambia: 73,
180 Georgia: 74,
181 Germany: 75,
182 Ghana: 76,
183 Gibraltar: 77,
184 Greece: 78,
185 Greenland: 79,
186 Grenada: 80,
187 Guam: 82,
188 Guatemala: 83,
189 "Guinea Republic": 85,
190 "Guinea-Bissau": 86,
191 "Guyana (British)": 87,
192 Haiti: 88,
193 Honduras: 89,
194 "Hong Kong": 90,
195 Hungary: 91,
196 Iceland: 92,
197 India: 93,
198 Indonesia: 94,
199 "Iran, Islamic Republic of": 95,
200 "Ireland, Republic Of": 96,
201 Israel: 97,
202 Italy: 98,
203 Jamaica: 99,
204 Japan: 100,
205 Jordan: 102,
206 Kazakhstan: 103,
207 Kenya: 104,
208 Kiribati: 105,
209 "Korea, Republic Of": 107,
210 Kuwait: 108,
211 Kyrgyzstan: 109,
212 "Lao People's Democratic Republ": 110,
213 Latvia: 111,
214 Lebanon: 112,
215 Lesotho: 113,
216 Liberia: 114,
217 Libya: 115,
218 Liechtenstein: 116,
219 Lithuania: 117,
220 Luxembourg: 118,
221 Macau: 119,
222 "Macedonia, Republic of (FYROM)": 120,
223 Madagascar: 121,
224 Malawi: 122,
225 Malaysia: 123,
226 Maldives: 124,
227 Mali: 125,
228 Malta: 126,
229 "Marshall Islands": 127,
230 Mauritania: 129,
231 Mauritius: 130,
232 Mexico: 131,
233 "Moldova, Republic Of": 132,
234 Monaco: 133,
235 Mongolia: 134,
236 Montenegro: 227,
237 Montserrat: 135,
238 Morocco: 136,
239 Mozambique: 137,
240 Myanmar: 138,
241 Namibia: 139,
242 "Nauru, Republic Of": 140,
243 Nepal: 141,
244 "Netherlands, The": 142,
245 Nevis: 143,
246 "New Caledonia": 144,
247 "New Zealand": 145,
248 Nicaragua: 146,
249 Niger: 147,
250 Nigeria: 148,
251 Niue: 149,
252 Norway: 150,
253 Oman: 151,
254 Pakistan: 152,
255 Panama: 153,
256 "Papua New Guinea": 154,
257 Paraguay: 155,
258 Peru: 156,
259 "Philippines, The": 157,
260 Poland: 158,
261 Portugal: 159,
262 "Portugal (Madeira)": 224,
263 "Puerto Rico": 160,
264 Qatar: 161,
265 Romania: 163,
266 "Russian Federation, The": 164,
267 Rwanda: 165,
268 Saipan: 166,
269 Samoa: 167,
270 "San Marino": 226,
271 "Sao Tome and Principe": 168,
272 "Saudi Arabia": 169,
273 Senegal: 170,
274 Serbia: 225,
275 Seychelles: 171,
276 "Sierra Leone": 172,
277 Singapore: 173,
278 Slovakia: 174,
279 Slovenia: 175,
280 "Solomon Islands": 176,
281 Somalia: 177,
282 "Somaliland, Rep of (North Soma": 178,
283 "South Africa": 179,
284 Spain: 180,
285 "Spain (Canary Islands,Ceuta,Melilla)": 223,
286 "Sri Lanka": 181,
287 "St. Barthelemy": 182,
288 "St. Eustatius": 183,
289 "St. Kitts": 184,
290 "St. Lucia": 185,
291 "St. Maarten": 186,
292 "St. Vincent": 187,
293 Sudan: 188,
294 Suriname: 189,
295 Swaziland: 190,
296 Sweden: 191,
297 Switzerland: 192,
298 Syria: 193,
299 Taiwan: 195,
300 Tajikistan: 196,
301 Tanzania: 197,
302 Thailand: 198,
303 Togo: 199,
304 Tonga: 200,
305 "Trinidad and Tobago": 201,
306 Tunisia: 222,
307 Turkey: 202,
308 Turkmenistan: 203,
309 "Turks and Caicos Islands": 204,
310 Tuvalu: 205,
311 Uganda: 206,
312 Ukraine: 207,
313 "United Arab Emirates": 208,
314 "United Kingdom": 209,
315 "United Kingdom (Guernsey)": 84,
316 "United Kingdom (Jersey)": 101,
317 "United States Of America": 210,
318 Uruguay: 211,
319 Uzbekistan: 212,
320 Vanuatu: 213,
321 Vietnam: 215,
322 "Virgin Islands (British)": 216,
323 "Virgin Islands (US)": 217,
324 Yemen: 218,
325 Zambia: 220,
326 Zimbabwe: 221,
327};
328
329// [...$('.imagenesLogos .marca_line')].reduce((acc, x) => { acc[x.querySelector('img').alt] = x.id; return acc}, {})
330const BRANDS = {
331 "+8000": `586`,
332 "100percent": `1275`,
333 "10bar": `1110`,
334 "226ERS": `1360`,
335 "2Toms": `5436`,
336 "2XU": `1283`,
337 "3M": `1362`,
338 "3t": `8734`,
339 "4arm Strong": `3934`,
340 "4F": `7566`,
341 "4iiii": `3426`,
342 "5 five": `8109`,
343 "8 C Plus": `2190`,
344 "9transport": `7829`,
345 Abloc: `8537`,
346 "Absolute Black": `4878`,
347 ABUS: `1363`,
348 Acid: `8077`,
349 Acimut: `7786`,
350 Acme: `4541`,
351 "Action Outdoor": `2017`,
352 adidas: `263`,
353 "Adidas Badminton": `5356`,
354 "adidas originals": `646`,
355 AEE: `368`,
356 Aftershokz: `1120`,
357 Afton: `3381`,
358 Agfa: `5490`,
359 AGU: `6478`,
360 Aifeit: `7033`,
361 "Air Relax": `5962`,
362 Airbone: `4473`,
363 Airman: `5734`,
364 "Airn Outdoor": `9681`,
365 Airofit: `8544`,
366 Airpop: `6916`,
367 Airwings: `5160`,
368 Alhonga: `7739`,
369 "All Mountain Style": `7516`,
370 "All Sins 18k": `9061`,
371 Allmatters: `8891`,
372 "Alpcross Components": `4884`,
373 Alpenheat: `439`,
374 "Alpha Industries": `6700`,
375 Alpina: `2379`,
376 Alpine: `5736`,
377 Alpinestars: `335`,
378 "Alpinestars Bicycle": `9606`,
379 Alpitude: `7737`,
380 "Altec Lansing": `4483`,
381 Alé: `1697`,
382 Amazfit: `4414`,
383 "American Classic": `3016`,
384 Amiaud: `4862`,
385 Amix: `4486`,
386 Amkov: `7563`,
387 Amlsport: `1020`,
388 Amplifi: `3679`,
389 "An Lun": `5282`,
390 "Ana Maria Lajusticia": `2874`,
391 Andrys: `7787`,
392 "Angelina Calzino": `8526`,
393 Anlen: `5281`,
394 Ansmann: `1112`,
395 Aphex: `7482`,
396 Apple: `4321`,
397 Approx: `5893`,
398 Apurna: `8735`,
399 Aqua2go: `7113`,
400 Aquafeel: `7310`,
401 Aquas: `2265`,
402 "Arch Max": `1235`,
403 "Arc’teryx": `1222`,
404 Arena: `11`,
405 Arexons: `10440`,
406 "Argon 18": `6061`,
407 Ariete: `1723`,
408 Arisun: `4970`,
409 Armada: `418`,
410 "Armor-x": `1293`,
411 Artein: `10439`,
412 Artsana: `6812`,
413 Arundel: `8534`,
414 Arva: `276`,
415 Ashima: `2896`,
416 Asics: `284`,
417 Asista: `3609`,
418 Askoll: `8514`,
419 "Ass Savers": `3670`,
420 Assos: `13`,
421 Astvte: `4158`,
422 Asus: `4382`,
423 Así: `8889`,
424 Atala: `4903`,
425 "ATC LTD TA": `4937`,
426 Atipick: `2613`,
427 Atv: `8547`,
428 Auvray: `4978`,
429 Avento: `3622`,
430 Avid: `16`,
431 "Awesome Maps": `7367`,
432 AXA: `3664`,
433 Axxios: `7405`,
434 "B&W": `5432`,
435 "B-Race": `7791`,
436 "B-urban": `7792`,
437 Babolat: `18`,
438 "Back On Track": `8738`,
439 Barbieri: `3687`,
440 Barfly: `4789`,
441 Barts: `2467`,
442 Basil: `2699`,
443 BBB: `483`,
444 Beal: `3430`,
445 Bear: `5430`,
446 "Bearing Cw": `7788`,
447 Beeline: `7118`,
448 Beeloom: `9598`,
449 Bell: `286`,
450 "Bell Italy": `7789`,
451 "Bella Aurora": `1874`,
452 Bellelli: `2045`,
453 Bematrix: `8802`,
454 Bend36: `3904`,
455 Benlee: `1644`,
456 Berghaus: `24`,
457 Bergner: `8144`,
458 Bering: `1338`,
459 Bern: `25`,
460 Beryl: `7119`,
461 "Best Divers": `26`,
462 Beto: `3773`,
463 Bettr: `6980`,
464 Beurer: `5520`,
465 "Bh Fitness": `7120`,
466 "Bicis Esteve": `7032`,
467 Bicisupport: `3890`,
468 "Bicycle Line": `1958`,
469 Biemme: `8936`,
470 "Bike Ahead": `9185`,
471 "Bike Fashion": `4476`,
472 "Bike Hand": `2897`,
473 "Bike Workx": `4803`,
474 "Bike Yoke": `8739`,
475 Bike7: `8741`,
476 Bikecare: `2773`,
477 Bikefinder: `9576`,
478 Bikefun: `3396`,
479 Bikeinn: `1272`,
480 Bikeribbon: `2601`,
481 "Bikers Dream": `5163`,
482 "Bikers Own": `4749`,
483 Bikeshield: `7510`,
484 Biknd: `7455`,
485 Billow: `5904`,
486 Bimanan: `9841`,
487 Bimpair: `5437`,
488 Biofreeze: `6905`,
489 Biona: `6981`,
490 Bioracer: `5647`,
491 "Biotech Usa": `9831`,
492 Biotex: `3932`,
493 Biotherm: `4054`,
494 Biotonik: `7887`,
495 Birzman: `7504`,
496 Bistark: `7790`,
497 "Black Bearing": `8542`,
498 "Black Cat Tire": `7738`,
499 "Black Diamond": `643`,
500 "Black Inc": `5008`,
501 Blackburn: `283`,
502 Blackspire: `7503`,
503 Blindsave: `8768`,
504 Bliz: `5486`,
505 Blossum: `4672`,
506 Blub: `4828`,
507 "Blueball Sport": `4304`,
508 Bluegrass: `875`,
509 "BnB Rack": `3921`,
510 Bobike: `534`,
511 "Body Glide": `1510`,
512 Bodygood: `9001`,
513 Bolle: `2550`,
514 Bombshell: `8743`,
515 Bombtrack: `4904`,
516 Bompar: `3891`,
517 "Bone Collection": `8558`,
518 Bonin: `2913`,
519 Bont: `3816`,
520 Bookman: `8935`,
521 Born: `1536`,
522 "Born Fruits": `1938`,
523 "Born Living Yoga": `6778`,
524 Bosch: `4477`,
525 "Boston Golf": `9277`,
526 Bottecchia: `8853`,
527 Box: `8744`,
528 Br: `6850`,
529 Brakco: `7035`,
530 Brandit: `6794`,
531 Braun: `5470`,
532 Breezer: `5277`,
533 Bresser: `6088`,
534 Brigmton: `5524`,
535 Briko: `466`,
536 "Britax Römer": `3546`,
537 "Brooks England": `1701`,
538 Brose: `8996`,
539 Broyx: `4849`,
540 Brunox: `4478`,
541 Bryton: `896`,
542 Bta: `10458`,
543 "Bub-up": `8745`,
544 Buchel: `4479`,
545 Buddyswim: `3194`,
546 "Buff ®": `252`,
547 "Build Your Brand": `10328`,
548 Bulls: `9200`,
549 Burgtec: `4933`,
550 Burley: `4653`,
551 Burton: `3647`,
552 "Busch&Muller": `4686`,
553 Buzzrack: `6234`,
554 "Bv Sport": `1344`,
555 Byte: `7471`,
556 Cairn: `3035`,
557 Camelbak: `36`,
558 Campagnolo: `37`,
559 Campingaz: `2175`,
560 "Cane Creek": `8292`,
561 Cannondale: `1242`,
562 Canyon: `4851`,
563 Capgo: `7762`,
564 Casall: `1282`,
565 Castelli: `497`,
566 Cateye: `40`,
567 Catlike: `41`,
568 "Cayler & Sons": `8649`,
569 Cebe: `2442`,
570 Cecotec: `4998`,
571 Cegasa: `6645`,
572 Celly: `2591`,
573 Cep: `1627`,
574 Ceramicspeed: `3702`,
575 "Cerda Group": `4926`,
576 Challenge: `3785`,
577 "Chamois Butt´r": `4532`,
578 Chaoyang: `3407`,
579 "Charge Sports Drinks": `8349`,
580 Chase: `8771`,
581 Chiba: `5164`,
582 Chicco: `6649`,
583 Chimpanzee: `1679`,
584 "Chris King": `4936`,
585 Chrome: `5003`,
586 Cinelli: `528`,
587 Cinq: `3876`,
588 Citadel: `5648`,
589 Citybug: `2346`,
590 "Cl Brakes": `7449`,
591 Classic: `5377`,
592 Clever: `4779`,
593 Clicgear: `8772`,
594 Clif: `1339`,
595 "Climbing Technology": `2578`,
596 Clinique: `3998`,
597 Clipon: `9171`,
598 Closca: `5646`,
599 Closethegap: `4885`,
600 "Club Ride": `4485`,
601 CMP: `640`,
602 cnSPOKE: `5283`,
603 Coas: `6747`,
604 Cobags: `7129`,
605 Cocoon: `9120`,
606 "Codex-U": `4363`,
607 Cofra: `6659`,
608 "Color Baby": `6832`,
609 Coluer: `6005`,
610 Columbia: `347`,
611 Columbus: `594`,
612 Compeed: `4194`,
613 Compex: `617`,
614 Composite: `8548`,
615 Compressport: `47`,
616 Conor: `8082`,
617 Consumo: `5058`,
618 Contact: `5529`,
619 Contec: `8969`,
620 Continental: `48`,
621 Controltech: `5950`,
622 Coolbox: `4334`,
623 Coospo: `10357`,
624 Copa: `3074`,
625 Coros: `4487`,
626 Corratec: `2235`,
627 Corsurf: `9454`,
628 "Cosmo Connected": `4719`,
629 CPA: `2594`,
630 Craft: `50`,
631 Craghoppers: `3078`,
632 Crane: `3780`,
633 Crankbrothers: `282`,
634 Cratoni: `3524`,
635 "Crazy Safety": `1943`,
636 "Crep Protect": `2859`,
637 Cressi: `51`,
638 Croozer: `3084`,
639 Crosscall: `4401`,
640 Crud: `5964`,
641 CST: `4720`,
642 Cube: `52`,
643 Cutered: `10039`,
644 Cybex: `3836`,
645 Cycl: `7132`,
646 "Cycling Ceramic": `3447`,
647 Cyclo: `2703`,
648 Cycloc: `5965`,
649 Cycology: `7922`,
650 "D-Light": `3889`,
651 Daewoo: `3193`,
652 Dahon: `384`,
653 Dainese: `346`,
654 Dakar: `7728`,
655 Dakine: `54`,
656 Damartsport: `5644`,
657 Dane: `4540`,
658 Dare2B: `2945`,
659 Darevie: `4902`,
660 Darkpads: `5429`,
661 Dashel: `6324`,
662 "Dcu Tecnologic": `5863`,
663 Decleor: `4055`,
664 Deda: `3674`,
665 Deerhunter: `6002`,
666 Deestone: `2899`,
667 Defeet: `2914`,
668 Deli: `2900`,
669 "Delta Cycle": `3432`,
670 Denver: `5743`,
671 Deportium: `7484`,
672 Dexshell: `8970`,
673 Dickies: `7008`,
674 Difi: `6067`,
675 "Dirt Freak": `7847`,
676 Disney: `2568`,
677 "Dkn Technology": `9599`,
678 Dmr: `8540`,
679 DMT: `597`,
680 Dom: `3802`,
681 Dosun: `2918`,
682 Douchebags: `613`,
683 "Dr Cool": `2139`,
684 "Dr Senst": `6258`,
685 "Dr. Organic": `6726`,
686 Drasanvi: `7473`,
687 Drift: `4467`,
688 "Drop Shot": `372`,
689 Drwheeler: `6909`,
690 "Ds Covers": `7435`,
691 "DT Swiss": `2173`,
692 Duracell: `2962`,
693 "Dutch Perfect": `2595`,
694 DVO: `6704`,
695 Dyedbro: `4934`,
696 Dynafit: `65`,
697 "E-Bike Vision": `4618`,
698 "E-thirteen": `5154`,
699 Eafit: `9094`,
700 Eassun: `887`,
701 Easton: `2034`,
702 Eastpak: `411`,
703 Easycamp: `3275`,
704 Easypix: `2282`,
705 EBC: `7500`,
706 Ebon: `4886`,
707 Echowell: `2901`,
708 Ecoflow: `6928`,
709 "Econic One": `7044`,
710 Ecoon: `9439`,
711 Edelrid: `281`,
712 Edm: `8072`,
713 "Effetto Mariposa": `9031`,
714 Eines: `9397`,
715 "El Gallo": `4837`,
716 Elevn: `8654`,
717 Elite: `69`,
718 Elix: `7890`,
719 Eloa: `6983`,
720 Eltin: `2954`,
721 Elvedes: `7793`,
722 Emhome: `7685`,
723 Enduro: `7501`,
724 "Enduro Bearings": `8639`,
725 Eneloop: `6262`,
726 Energizer: `1475`,
727 "Energy Sistem": `4402`,
728 Enervit: `4725`,
729 "Enforma Socks": `4986`,
730 Enve: `8774`,
731 Eolos: `1346`,
732 Eovolt: `8761`,
733 Epitact: `8775`,
734 Epoch: `3888`,
735 Epsealon: `1480`,
736 Ergon: `3015`,
737 Ergotec: `4621`,
738 Erima: `8621`,
739 Errea: `8625`,
740 Esge: `4722`,
741 ESIgrips: `4793`,
742 Esperia: `8852`,
743 Etixx: `3752`,
744 Etxeondo: `644`,
745 Eucerin: `3986`,
746 Everactive: `9330`,
747 Eveready: `2963`,
748 Evergy: `9428`,
749 "Evo Bikes": `8801`,
750 Evoc: `7494`,
751 Evolve: `8655`,
752 "Exa Form": `7411`,
753 Exal: `4656`,
754 "Excellent Houseware": `8140`,
755 Excess: `8776`,
756 "Exposure Lights": `4787`,
757 Exustar: `2385`,
758 "F-Lite": `4689`,
759 F100: `4687`,
760 "Fabio Quartararo": `2848`,
761 Fabric: `1996`,
762 "Fabrica De Juguetes Chicos": `6959`,
763 Fahrer: `4628`,
764 Falke: `1148`,
765 "Far&Near": `3678`,
766 Fashy: `7309`,
767 Fasi: `4939`,
768 "Fast Forward": `9076`,
769 Fastrider: `7673`,
770 Favero: `7001`,
771 Favour: `6112`,
772 FDP: `7897`,
773 Federal: `8778`,
774 Feedback: `3019`,
775 "Feelfree Gear": `3376`,
776 Fenix: `2395`,
777 Ferrino: `73`,
778 FFWD: `4742`,
779 Fidlock: `3762`,
780 "Fil Safe": `5431`,
781 Fila: `1533`,
782 Finis: `261`,
783 "Finish Line": `2605`,
784 Finna: `4276`,
785 First: `3902`,
786 "First Bike": `2372`,
787 "Fischer Bikes": `6004`,
788 "Fisio Xtreme": `9284`,
789 Fisiocrem: `581`,
790 Fitbit: `1613`,
791 "Fitfiu Fitness": `9105`,
792 "Fitness Tech": `8998`,
793 "Five Ten": `2367`,
794 Fixplus: `3132`,
795 Fizik: `302`,
796 Flashmer: `1306`,
797 Flectr: `3147`,
798 Flexall: `6906`,
799 Flexir: `7462`,
800 FLM: `2781`,
801 "Fly Racing": `7453`,
802 Focus: `8907`,
803 Force: `7036`,
804 "Force Xv": `5637`,
805 Formigli: `7741`,
806 Formula: `3871`,
807 Forward: `8782`,
808 Fox: `3052`,
809 "Fox Rage": `5940`,
810 Foxman: `2177`,
811 Fpd: `8804`,
812 FSA: `2050`,
813 Fuji: `988`,
814 "Fuji-toki": `7773`,
815 Fulcrum: `76`,
816 FullGas: `3782`,
817 "Fun Bike": `8359`,
818 Funken: `9307`,
819 Funkita: `609`,
820 "Funky Trunks": `610`,
821 Fytter: `573`,
822 "G-kos": `7794`,
823 "G-Star": `1914`,
824 Gaadi: `4629`,
825 Gaiam: `1913`,
826 Galfer: `2704`,
827 Garcia: `6006`,
828 Garibaldi: `1518`,
829 "Gear Aid": `3386`,
830 Geco: `3906`,
831 Gembird: `6504`,
832 Gen: `7525`,
833 "Genuine Innovations": `3826`,
834 Geosmina: `10040`,
835 GES: `2902`,
836 GHOST: `4854`,
837 Gigabyte: `4425`,
838 Gios: `6727`,
839 Gipiemme: `9790`,
840 Giro: `81`,
841 Gist: `4726`,
842 Givi: `6706`,
843 Givova: `7492`,
844 Giyo: `2919`,
845 Gladiatorfit: `9797`,
846 Globber: `8617`,
847 Globus: `6480`,
848 "Go System": `3139`,
849 "Goal Zero": `5447`,
850 "Gold Nutrition": `6737`,
851 Goldfren: `9809`,
852 Goobay: `5894`,
853 Goodyear: `1645`,
854 GoPro: `84`,
855 "GORE® Wear": `3158`,
856 "Gorilla Sports": `9615`,
857 "Gorilla Tape": `7759`,
858 Gp: `8205`,
859 "Gp Batteries": `3848`,
860 Graff: `5588`,
861 "Granite Design": `6722`,
862 "Green Cell": `9564`,
863 Gregory: `1010`,
864 Gridinlux: `9671`,
865 Grifone: `1276`,
866 GripGrab: `2275`,
867 Grundens: `6386`,
868 GT: `3393`,
869 GTR: `4993`,
870 GU: `1284`,
871 "Gu Energy": `9239`,
872 Guardian: `1564`,
873 Guee: `7499`,
874 Gurpil: `3313`,
875 "Guy Harvey": `471`,
876 Gymstick: `5454`,
877 H4u: `9824`,
878 Haberland: `4690`,
879 HAD: `4657`,
880 Haeger: `6356`,
881 Haglöfs: `371`,
882 Haibike: `4622`,
883 Hamax: `3548`,
884 Handlz: `4994`,
885 Handup: `5457`,
886 Hannah: `2055`,
887 Hape: `7164`,
888 "Hapo-g": `7795`,
889 Harbinger: `7551`,
890 Haro: `2719`,
891 "Hart Hunting": `3684`,
892 Hartex: `8382`,
893 "Hawaiian Tropic": `5075`,
894 Head: `88`,
895 "Head Bike": `9820`,
896 "Head Swimming": `3705`,
897 Headgy: `4979`,
898 Hebie: `4610`,
899 Hedkayse: `8511`,
900 Heidenau: `4630`,
901 Held: `500`,
902 Helite: `8510`,
903 Hellfire: `2783`,
904 "Helly Hansen": `90`,
905 Hergo: `3893`,
906 Herrmans: `4611`,
907 Herschel: `3002`,
908 Hibros: `7892`,
909 Hilx: `7785`,
910 Hiplok: `2761`,
911 Hirzl: `4887`,
912 Hivital: `8339`,
913 HJC: `503`,
914 "Ho Soccer": `2052`,
915 Hock: `4631`,
916 Hollis: `92`,
917 Homcom: `7700`,
918 Honor: `4341`,
919 Hoopoe: `4815`,
920 Hope: `7498`,
921 Horn: `4724`,
922 "Hotspot Design": `2076`,
923 Hovding: `7169`,
924 Hsn: `8560`,
925 HT: `3316`,
926 "Htp Design": `7468`,
927 Huawei: `3180`,
928 "Huck Norris": `9165`,
929 Hummel: `5860`,
930 Hutchinson: `93`,
931 HydraKnight: `4804`,
932 Hydroponic: `2222`,
933 "Hygen Spray": `7893`,
934 Hyperice: `9087`,
935 Ibera: `2197`,
936 Ibis: `7883`,
937 Icebreaker: `1670`,
938 Icepeak: `6802`,
939 IceToolz: `5570`,
940 "Id Match": `8324`,
941 Igpsport: `9577`,
942 Ihealth: `2398`,
943 Iluv: `1916`,
944 Impac: `4658`,
945 "Impala Rollers": `4830`,
946 Imperial: `4554`,
947 "Inca Hair Jewellery": `6963`,
948 "Industry Nine": `4794`,
949 Infini: `4693`,
950 "Infinitii Ramps": `8947`,
951 Infinity: `2359`,
952 "Inno Bike": `4694`,
953 Innova: `2903`,
954 "Innova Nutrition": `5019`,
955 Inpeak: `10036`,
956 Insight: `8646`,
957 Inspyre: `8971`,
958 Insta360: `5504`,
959 Intenso: `2062`,
960 "Interphone Cellularline": `1115`,
961 Intova: `98`,
962 Inxide: `6720`,
963 ION: `1946`,
964 Iprotec: `1732`,
965 "iQ-Company": `316`,
966 "Iron-ic": `7030`,
967 ISB: `3766`,
968 Isbjörn: `1211`,
969 ISM: `2021`,
970 Iswari: `9840`,
971 ITM: `599`,
972 Ixcor: `9745`,
973 Ixon: `2455`,
974 iXS: `2456`,
975 Izas: `510`,
976 "Izumi Chain": `4256`,
977 "J.Juan": `3894`,
978 Jagwire: `2051`,
979 Jako: `8622`,
980 Janod: `5339`,
981 Jata: `6359`,
982 JCOOL: `4899`,
983 JeansTrack: `3959`,
984 Jeep: `7697`,
985 "Jetblack Cycling": `7099`,
986 Joby: `3961`,
987 "JOE´S": `2546`,
988 "John Smith": `1736`,
989 Joluvi: `4684`,
990 Joma: `607`,
991 "Jopa Mx": `10557`,
992 JRC: `463`,
993 Jucad: `9245`,
994 "Juice Lubes": `4786`,
995 Julbo: `369`,
996 JVC: `4557`,
997 "K-Edge": `1617`,
998 "K-Swiss": `445`,
999 "K-up": `8631`,
1000 Kalas: `9746`,
1001 Kali: `332`,
1002 "Kali Protectives": `4315`,
1003 Kalloy: `3928`,
1004 Kanebo: `4258`,
1005 Kappa: `1681`,
1006 Kaps: `9182`,
1007 "Kari Traa": `7077`,
1008 Kariban: `8623`,
1009 Karpos: `867`,
1010 Kask: `1232`,
1011 Kayak: `5171`,
1012 Kazam: `3125`,
1013 KCNC: `3651`,
1014 Keboo: `9590`,
1015 Ked: `8609`,
1016 Keen: `102`,
1017 Keep: `490`,
1018 Kelme: `2329`,
1019 Kempa: `1337`,
1020 Kenda: `2036`,
1021 Kengine: `7037`,
1022 Kenny: `6891`,
1023 "Keto Protein": `9828`,
1024 "Kids Licensing": `5359`,
1025 Kidzamo: `8065`,
1026 Kilpi: `1562`,
1027 Kimood: `8637`,
1028 "Kind Shock": `2863`,
1029 Kinetic: `3818`,
1030 "Klan-E": `4504`,
1031 KLICKfix: `3754`,
1032 Klim: `4819`,
1033 Klower: `7889`,
1034 Klättermusen: `6806`,
1035 KMC: `2706`,
1036 Knog: `430`,
1037 Kodak: `4412`,
1038 Kody: `4839`,
1039 Kokua: `2548`,
1040 "KOM Cycling": `5448`,
1041 Kong: `353`,
1042 KOO: `3201`,
1043 "Kookie Cat": `6984`,
1044 Korda: `8911`,
1045 Koss: `4559`,
1046 Kovix: `5718`,
1047 Krafwin: `1114`,
1048 Krf: `3256`,
1049 Kroon: `8706`,
1050 Kruskis: `400`,
1051 Kryptonite: `2720`,
1052 "KS Tools": `6143`,
1053 KSIX: `1351`,
1054 "KT Tape": `4310`,
1055 Ktm: `8314`,
1056 Kujo: `5722`,
1057 Kynay: `8980`,
1058 Kyrocream: `1023`,
1059 "L-twoo": `10332`,
1060 L2s: `8916`,
1061 "La Sportiva": `482`,
1062 Lacd: `7832`,
1063 "Lacomed Sport": `7796`,
1064 Lacoste: `645`,
1065 Lactojoy: `8550`,
1066 Lafuma: `305`,
1067 Laica: `7189`,
1068 Lake: `1464`,
1069 Lalizas: `401`,
1070 Lancaster: `4159`,
1071 "Lasalle Sports": `7467`,
1072 Lavina: `7894`,
1073 Lazer: `1937`,
1074 "Le Coq Sportif": `2407`,
1075 Leatt: `1281`,
1076 "Led Lenser": `107`,
1077 "Legend Ebikes": `9326`,
1078 Legnano: `7027`,
1079 Lelumia: `8535`,
1080 Lemond: `1019`,
1081 Lenz: `628`,
1082 "Leonardi Racing": `8708`,
1083 Leone1947: `4734`,
1084 Leotec: `4667`,
1085 Lezyne: `110`,
1086 LG: `4342`,
1087 Lidergrip: `9393`,
1088 LifeSystems: `1662`,
1089 Lifeventure: `1663`,
1090 Limar: `112`,
1091 Linka: `5280`,
1092 Livall: `2927`,
1093 Livecell: `9843`,
1094 Lizard: `3094`,
1095 "Lizard Skins": `8918`,
1096 Lockbox: `6892`,
1097 Loeffler: `2866`,
1098 Lof: `1737`,
1099 Logan: `4889`,
1100 Lolë: `3444`,
1101 Lonsdale: `1646`,
1102 Look: `114`,
1103 Louri: `8610`,
1104 Luft: `5373`,
1105 Luma: `971`,
1106 Lumineo: `8168`,
1107 Luminox: `2049`,
1108 "Lumos Helmet": `8513`,
1109 Lupine: `280`,
1110 "M-Wave": `4751`,
1111 "Mac In A Sac": `6008`,
1112 Mach1: `8052`,
1113 Macna: `2088`,
1114 Macron: `8620`,
1115 Mader: `9363`,
1116 Madform: `1343`,
1117 Madwave: `2383`,
1118 "Mag-Lite": `621`,
1119 Magene: `7880`,
1120 "Magic Shine": `3781`,
1121 Magped: `8920`,
1122 Magura: `2204`,
1123 Mako: `545`,
1124 Mammut: `120`,
1125 Manitou: `8564`,
1126 "Marc Marquez": `976`,
1127 Marmot: `122`,
1128 Marshguard: `8536`,
1129 Maruni: `8281`,
1130 Marzocchi: `3633`,
1131 MASSI: `2144`,
1132 "Master Lock": `1580`,
1133 "Matcha & Co": `9836`,
1134 Matt: `520`,
1135 Maurten: `7906`,
1136 Mavic: `124`,
1137 "Max Protein": `9848`,
1138 Maxcom: `2063`,
1139 Maxell: `1038`,
1140 Maxim: `7495`,
1141 Maxxis: `125`,
1142 "MB Wear": `5147`,
1143 Mbm: `2718`,
1144 "Mc David": `3797`,
1145 McNett: `126`,
1146 Mebaline: `2886`,
1147 Medisana: `3181`,
1148 Megamo: `2937`,
1149 Meilan: `9580`,
1150 Melon: `3525`,
1151 Menabo: `2236`,
1152 "Mercury Equipment": `3051`,
1153 "Merlin Bike Care": `4251`,
1154 Messingschlager: `4613`,
1155 MET: `129`,
1156 Metalsub: `2094`,
1157 Mfi: `8973`,
1158 Miche: `2145`,
1159 Michelin: `264`,
1160 MicroSHIFT: `4867`,
1161 Midland: `130`,
1162 Mighty: `5284`,
1163 "Mijnen Pieper": `4640`,
1164 Mikasa: `2465`,
1165 "Miles Wide": `4783`,
1166 Milkit: `4946`,
1167 Minoura: `535`,
1168 Mission: `1574`,
1169 "Mister Tee": `8627`,
1170 Mitas: `2596`,
1171 Mizuno: `132`,
1172 Mks: `6387`,
1173 Mobilis: `4337`,
1174 Mobius: `3788`,
1175 Momabikes: `3621`,
1176 Momum: `8532`,
1177 Mondaine: `2948`,
1178 "Monkeys Sauce": `4840`,
1179 Montane: `1055`,
1180 Montbell: `5317`,
1181 Montura: `4746`,
1182 Moon: `2904`,
1183 Mooquer: `9387`,
1184 "Moose Soft-goods": `4260`,
1185 "Morgan Blue": `3182`,
1186 Mosconi: `2710`,
1187 Mota: `8178`,
1188 Motip: `7696`,
1189 Motorex: `6689`,
1190 Motorola: `2180`,
1191 Mounty: `7766`,
1192 "Mr. Wolf": `8608`,
1193 "Mr.control": `7727`,
1194 MRP: `3784`,
1195 MSC: `2864`,
1196 "MTB Hopper": `7434`,
1197 "Muc Off": `1971`,
1198 Mueller: `394`,
1199 "Mund Socks": `2264`,
1200 Musto: `619`,
1201 Muvi: `648`,
1202 Muvit: `2920`,
1203 "Muvit Io": `8682`,
1204 Myflash: `7210`,
1205 Mykronoz: `2928`,
1206 Myn: `9750`,
1207 MyWay: `2929`,
1208 Nalini: `5947`,
1209 "Named Sport": `3710`,
1210 Nathan: `962`,
1211 Natruly: `6985`,
1212 "Natural Fit": `8255`,
1213 Naturalshine: `137`,
1214 "Natures Bounty": `6725`,
1215 Naturtierra: `9832`,
1216 Navali: `3895`,
1217 "NC-17": `7511`,
1218 Nebbia: `6047`,
1219 "Nebo Tools": `1733`,
1220 Neco: `4805`,
1221 Neparo: `6271`,
1222 Net: `2039`,
1223 "New Balance": `1312`,
1224 "New Era": `2891`,
1225 "New Looxs": `2373`,
1226 Newline: `5300`,
1227 Newton: `880`,
1228 Nexgim: `9780`,
1229 Nextorch: `977`,
1230 Nfun: `2911`,
1231 Nike: `365`,
1232 "Nike Swim": `2770`,
1233 Nilox: `554`,
1234 Nimo: `8135`,
1235 Niner: `3908`,
1236 "Nite Ize": `1906`,
1237 "Nite Rider": `4741`,
1238 Nokia: `3406`,
1239 Nonbak: `2769`,
1240 Nooyah: `4900`,
1241 Norco: `4697`,
1242 Northwave: `139`,
1243 Novatec: `5319`,
1244 Nox: `140`,
1245 Nrc: `10467`,
1246 NRG: `7798`,
1247 "Nu Swimrun": `4975`,
1248 Nutcase: `1573`,
1249 Nutrinovex: `8509`,
1250 Nutrisport: `1028`,
1251 Nuvo: `3931`,
1252 "O-stand": `6388`,
1253 Oakley: `142`,
1254 "Ocean Sunglasses": `2302`,
1255 Oceanarium: `5443`,
1256 Oceanic: `144`,
1257 Ocun: `1289`,
1258 Odeclas: `1513`,
1259 ODI: `3783`,
1260 Odlo: `145`,
1261 Odyssey: `8795`,
1262 Oem: `7220`,
1263 OJ: `2363`,
1264 Oko: `8943`,
1265 Olive: `4817`,
1266 Ology: `2142`,
1267 One: `7769`,
1268 "One Industries": `3808`,
1269 Oneal: `141`,
1270 OnGuard: `1917`,
1271 "Only Play": `7458`,
1272 "Onn Style": `2608`,
1273 Onza: `7497`,
1274 Oppo: `4981`,
1275 "Orange Mud": `5865`,
1276 "Orange Seal": `4831`,
1277 Orbegozo: `5481`,
1278 Orca: `5933`,
1279 Orcatorch: `1581`,
1280 "Oregon Scientific": `150`,
1281 Oreka: `4841`,
1282 Orontas: `4157`,
1283 Ortlieb: `1225`,
1284 Osprey: `883`,
1285 Otso: `4846`,
1286 Ottolock: `6409`,
1287 "Out Of": `6927`,
1288 "Outdoor Research": `982`,
1289 Outwell: `3280`,
1290 Overade: `5320`,
1291 Overstims: `6795`,
1292 Oxford: `6693`,
1293 Oxypro: `9000`,
1294 "O´neill": `926`,
1295 "P.A.C.": `4698`,
1296 "Pacific Socks": `8695`,
1297 Paingone: `6172`,
1298 Paleobull: `9822`,
1299 Palomar: `7229`,
1300 Panaracer: `536`,
1301 Panasonic: `3318`,
1302 Pangea: `7459`,
1303 Panzer: `9096`,
1304 "Panzer Glass": `4962`,
1305 "Park Tool": `3828`,
1306 Pax: `4879`,
1307 Peak: `8633`,
1308 "Peak Performance": `367`,
1309 "Pearl Izumi": `537`,
1310 "Peaty´s": `4932`,
1311 "Pedal Plate": `5869`,