@@ -123,6 +123,7 @@ fn available_browsers() -> HashMap<String, String> {
123123 ( "4A" , "Acoo Browser" ) ,
124124 ( "BW" , "AdBlock Browser" ) ,
125125 ( "A7" , "Adult Browser" ) ,
126+ ( "8A" , "Ai Browser" ) ,
126127 ( "A9" , "Airfind Secure Browser" ) ,
127128 ( "AF" , "ANT Fresco" ) ,
128129 ( "AG" , "ANTGalio" ) ,
@@ -140,6 +141,7 @@ fn available_browsers() -> HashMap<String, String> {
140141 ( "A4" , "AOL Shield Pro" ) ,
141142 ( "2A" , "Aplix" ) ,
142143 ( "A6" , "AppBrowzer" ) ,
144+ ( "0A" , "AppTec Secure Browser" ) ,
143145 ( "AP" , "APUS Browser" ) ,
144146 ( "AR" , "Arora" ) ,
145147 ( "AX" , "Arctic Fox" ) ,
@@ -148,6 +150,7 @@ fn available_browsers() -> HashMap<String, String> {
148150 ( "PN" , "APN Browser" ) ,
149151 ( "6A" , "Arachne" ) ,
150152 ( "RA" , "Arc" ) ,
153+ ( "R5" , "Armorfly Browser" ) ,
151154 ( "AI" , "Arvin" ) ,
152155 ( "AK" , "Ask.com" ) ,
153156 ( "AU" , "Asus Browser" ) ,
@@ -193,6 +196,7 @@ fn available_browsers() -> HashMap<String, String> {
193196 ( "BX" , "BrowseX" ) ,
194197 ( "BZ" , "Browzar" ) ,
195198 ( "B7" , "Browlser" ) ,
199+ ( "M9" , "Browser Mini" ) ,
196200 ( "4B" , "BrowsBit" ) ,
197201 ( "BY" , "Biyubi" ) ,
198202 ( "BF" , "Byffox" ) ,
@@ -237,6 +241,7 @@ fn available_browsers() -> HashMap<String, String> {
237241 ( "C5" , "Chromium GOST" ) ,
238242 ( "CY" , "Cyberfox" ) ,
239243 ( "CS" , "Cheshire" ) ,
244+ ( "8C" , "Cromite" ) ,
240245 ( "RC" , "Crow Browser" ) ,
241246 ( "CT" , "Crusta" ) ,
242247 ( "CG" , "Craving Explorer" ) ,
@@ -309,6 +314,7 @@ fn available_browsers() -> HashMap<String, String> {
309314 ( "FH" , "Flash Browser" ) ,
310315 ( "FS" , "Flast" ) ,
311316 ( "F5" , "Flyperlink" ) ,
317+ ( "F9" , "FOSS Browser" ) ,
312318 ( "FU" , "FreeU" ) ,
313319 ( "F6" , "Freedom Browser" ) ,
314320 ( "FT" , "Frost" ) ,
@@ -329,6 +335,7 @@ fn available_browsers() -> HashMap<String, String> {
329335 ( "G2" , "GO Browser" ) ,
330336 ( "RN" , "GreenBrowser" ) ,
331337 ( "HW" , "Habit Browser" ) ,
338+ ( "H7" , "Halo Browser" ) ,
332339 ( "HB" , "Harman Browser" ) ,
333340 ( "HS" , "HasBrowser" ) ,
334341 ( "HA" , "Hawk Turbo Browser" ) ,
@@ -340,6 +347,7 @@ fn available_browsers() -> HashMap<String, String> {
340347 ( "H4" , "Holla Web Browser" ) ,
341348 ( "H5" , "HotBrowser" ) ,
342349 ( "HJ" , "HotJava" ) ,
350+ ( "H6" , "HONOR Browser" ) ,
343351 ( "HT" , "HTC Browser" ) ,
344352 ( "HU" , "Huawei Browser Mobile" ) ,
345353 ( "HP" , "Huawei Browser" ) ,
@@ -364,10 +372,11 @@ fn available_browsers() -> HashMap<String, String> {
364372 ( "I9" , "Insta Browser" ) ,
365373 ( "IE" , "Internet Explorer" ) ,
366374 ( "I7" , "Internet Browser Secure" ) ,
375+ ( "5I" , "Internet Webbrowser" ) ,
367376 ( "3I" , "Intune Managed Browser" ) ,
368377 ( "I5" , "Indian UC Mini Browser" ) ,
369378 ( "Z0" , "InBrowser" ) ,
370- ( "IG" , "Involt Go" ) ,
379+ ( "IG" , "Involta Go" ) ,
371380 ( "IM" , "IE Mobile" ) ,
372381 ( "IR" , "Iron" ) ,
373382 ( "JB" , "Japan Browser" ) ,
@@ -380,6 +389,7 @@ fn available_browsers() -> HashMap<String, String> {
380389 ( "JZ" , "JUZI Browser" ) ,
381390 ( "KB" , "K.Browser" ) ,
382391 ( "KF" , "Keepsafe Browser" ) ,
392+ ( "K7" , "KeepSolid Browser" ) ,
383393 ( "KS" , "Kids Safe Browser" ) ,
384394 ( "KI" , "Kindle Browser" ) ,
385395 ( "KM" , "K-meleon" ) ,
@@ -404,7 +414,7 @@ fn available_browsers() -> HashMap<String, String> {
404414 ( "LF" , "LieBaoFast" ) ,
405415 ( "LG" , "LG Browser" ) ,
406416 ( "LH" , "Light" ) ,
407- ( "L4" , "lightning Browser Plus" ) ,
417+ ( "L4" , "Lightning Browser Plus" ) ,
408418 ( "L1" , "Lilo" ) ,
409419 ( "LI" , "Links" ) ,
410420 ( "RI" , "Liri Browser" ) ,
@@ -434,7 +444,7 @@ fn available_browsers() -> HashMap<String, String> {
434444 ( "M3" , "Midori Lite" ) ,
435445 ( "M6" , "MixerBox AI" ) ,
436446 ( "MO" , "Mobicip" ) ,
437- ( "MU" , "MIUI Browser" ) ,
447+ ( "MU" , "Mi Browser" ) ,
438448 ( "MS" , "Mobile Silk" ) ,
439449 ( "MK" , "Mogok Browser" ) ,
440450 ( "M8" , "Motorola Internet Browser" ) ,
@@ -443,6 +453,7 @@ fn available_browsers() -> HashMap<String, String> {
443453 ( "MX" , "Maxthon" ) ,
444454 ( "M4" , "MaxTube Browser" ) ,
445455 ( "MA" , "Maelstrom" ) ,
456+ ( "3M" , "Mises" ) ,
446457 ( "MM" , "Mmx Browser" ) ,
447458 ( "NM" , "MxNitro" ) ,
448459 ( "MY" , "Mypal" ) ,
@@ -467,6 +478,7 @@ fn available_browsers() -> HashMap<String, String> {
467478 ( "NP" , "NetPositive" ) ,
468479 ( "NS" , "Netscape" ) ,
469480 ( "WR" , "NextWord Browser" ) ,
481+ ( "N8" , "Ninesky" ) ,
470482 ( "NT" , "NTENT Browser" ) ,
471483 ( "NU" , "Nuanti Meta" ) ,
472484 ( "NI" , "Nuviu" ) ,
@@ -485,6 +497,7 @@ fn available_browsers() -> HashMap<String, String> {
485497 ( "OL" , "OnBrowser Lite" ) ,
486498 ( "OE" , "ONE Browser" ) ,
487499 ( "N4" , "Onion Browser" ) ,
500+ ( "1N" , "ONIONBrowser" ) ,
488501 ( "Y1" , "Opera Crypto" ) ,
489502 ( "OX" , "Opera GX" ) ,
490503 ( "OG" , "Opera Neon" ) ,
@@ -506,41 +519,53 @@ fn available_browsers() -> HashMap<String, String> {
506519 ( "O4" , "Open Browser" ) ,
507520 ( "4U" , "Open Browser 4U" ) ,
508521 ( "5G" , "Open Browser fast 5G" ) ,
522+ ( "5O" , "Open Browser Lite" ) ,
509523 ( "O7" , "Open TV Browser" ) ,
510524 ( "OW" , "OmniWeb" ) ,
511525 ( "OT" , "Otter Browser" ) ,
512526 ( "4O" , "Owl Browser" ) ,
527+ ( "JR" , "OJR Browser" ) ,
513528 ( "PL" , "Palm Blazer" ) ,
514529 ( "PM" , "Pale Moon" ) ,
515530 ( "PY" , "Polypane" ) ,
516531 ( "8P" , "Prism" ) ,
517532 ( "PP" , "Oppo Browser" ) ,
518533 ( "P6" , "Opus Browser" ) ,
519534 ( "PR" , "Palm Pre" ) ,
520- ( "PU" , "Puffin" ) ,
535+ ( "7I" , "Puffin Cloud Browser" ) ,
536+ ( "6I" , "Puffin Incognito Browser" ) ,
537+ ( "PU" , "Puffin Secure Browser" ) ,
521538 ( "2P" , "Puffin Web Browser" ) ,
522539 ( "PW" , "Palm WebPro" ) ,
523540 ( "PA" , "Palmscape" ) ,
524541 ( "P7" , "Pawxy" ) ,
542+ ( "0P" , "Peach Browser" ) ,
525543 ( "PE" , "Perfect Browser" ) ,
544+ ( "K6" , "Perk" ) ,
526545 ( "P1" , "Phantom.me" ) ,
527546 ( "PH" , "Phantom Browser" ) ,
528547 ( "PX" , "Phoenix" ) ,
529548 ( "PB" , "Phoenix Browser" ) ,
530549 ( "5P" , "Photon" ) ,
550+ ( "N9" , "Pintar Browser" ) ,
531551 ( "P9" , "PirateBrowser" ) ,
532552 ( "P8" , "PICO Browser" ) ,
533553 ( "PF" , "PlayFree Browser" ) ,
534554 ( "PK" , "PocketBook Browser" ) ,
535555 ( "PO" , "Polaris" ) ,
536556 ( "PT" , "Polarity" ) ,
537557 ( "LY" , "PolyBrowser" ) ,
558+ ( "9P" , "Presearch" ) ,
559+ ( "BP" , "Privacy Browser" ) ,
538560 ( "PI" , "PrivacyWall" ) ,
539561 ( "P4" , "Privacy Explorer Fast Safe" ) ,
562+ ( "X5" , "Privacy Pioneer Browser" ) ,
540563 ( "P3" , "Private Internet Browser" ) ,
541564 ( "P5" , "Proxy Browser" ) ,
542565 ( "7P" , "Proxyium" ) ,
543566 ( "6P" , "Proxynet" ) ,
567+ ( "2F" , "ProxyFox" ) ,
568+ ( "2M" , "ProxyMax" ) ,
544569 ( "P2" , "Pi Browser" ) ,
545570 ( "P0" , "PronHub Browser" ) ,
546571 ( "PC" , "PSI Secure Browser" ) ,
@@ -560,10 +585,12 @@ fn available_browsers() -> HashMap<String, String> {
560585 ( "QU" , "Quark" ) ,
561586 ( "QZ" , "QupZilla" ) ,
562587 ( "QM" , "Qwant Mobile" ) ,
588+ ( "Q5" , "QtWeb" ) ,
563589 ( "QW" , "QtWebEngine" ) ,
564590 ( "R3" , "Rakuten Browser" ) ,
565591 ( "R4" , "Rakuten Web Search" ) ,
566592 ( "R2" , "Raspbian Chromium" ) ,
593+ ( "RT" , "RCA Tor Explorer" ) ,
567594 ( "RE" , "Realme Browser" ) ,
568595 ( "RK" , "Rekonq" ) ,
569596 ( "RM" , "RockMelt" ) ,
@@ -611,6 +638,7 @@ fn available_browsers() -> HashMap<String, String> {
611638 ( "LE" , "Smart Lenovo Browser" ) ,
612639 ( "OZ" , "Smooz" ) ,
613640 ( "SN" , "Snowshoe" ) ,
641+ ( "K5" , "Spark" ) ,
614642 ( "B1" , "Spectre Browser" ) ,
615643 ( "S2" , "Splash" ) ,
616644 ( "SI" , "Sputnik Browser" ) ,
@@ -648,10 +676,14 @@ fn available_browsers() -> HashMap<String, String> {
648676 ( "TI" , "Tint Browser" ) ,
649677 ( "TL" , "TrueLocation Browser" ) ,
650678 ( "TC" , "TUC Mini Browser" ) ,
679+ ( "TK" , "TUSK" ) ,
651680 ( "TU" , "Tungsten" ) ,
652681 ( "TG" , "ToGate" ) ,
682+ ( "T3" , "Total Browser" ) ,
683+ ( "TQ" , "TQ Browser" ) ,
653684 ( "TS" , "TweakStyle" ) ,
654685 ( "TV" , "TV Bro" ) ,
686+ ( "T4" , "TV-Browser Internet" ) ,
655687 ( "U0" , "U Browser" ) ,
656688 ( "UB" , "UBrowser" ) ,
657689 ( "UC" , "UC Browser" ) ,
@@ -666,6 +698,7 @@ fn available_browsers() -> HashMap<String, String> {
666698 ( "V0" , "vBrowser" ) ,
667699 ( "VA" , "Vast Browser" ) ,
668700 ( "V3" , "VD Browser" ) ,
701+ ( "VR" , "Veera" ) ,
669702 ( "VE" , "Venus Browser" ) ,
670703 ( "WD" , "Vewd Browser" ) ,
671704 ( "V5" , "VibeMate" ) ,
@@ -702,6 +735,7 @@ fn available_browsers() -> HashMap<String, String> {
702735 ( "YG" , "YAGI" ) ,
703736 ( "YJ" , "Yahoo! Japan Browser" ) ,
704737 ( "YA" , "Yandex Browser" ) ,
738+ ( "Y4" , "Yandex Browser Corp" ) ,
705739 ( "YL" , "Yandex Browser Lite" ) ,
706740 ( "YN" , "Yaani Browser" ) ,
707741 ( "Y2" , "Yo Browser" ) ,
@@ -710,13 +744,15 @@ fn available_browsers() -> HashMap<String, String> {
710744 ( "Y3" , "YouBrowser" ) ,
711745 ( "YZ" , "Yuzu Browser" ) ,
712746 ( "XR" , "xBrowser" ) ,
747+ ( "X3" , "MMBOX XBrowser" ) ,
713748 ( "XB" , "X Browser Lite" ) ,
714749 ( "X0" , "X-VPN" ) ,
715750 ( "X1" , "xBrowser Pro Super Fast" ) ,
716751 ( "XN" , "XNX Browser" ) ,
717752 ( "XT" , "XtremeCast" ) ,
718753 ( "XS" , "xStand" ) ,
719754 ( "XI" , "Xiino" ) ,
755+ ( "X4" , "XnBrowse" ) ,
720756 ( "XO" , "Xooloo Internet" ) ,
721757 ( "XV" , "Xvast" ) ,
722758 ( "ZE" , "Zetakey" ) ,
@@ -732,9 +768,9 @@ fn available_browsers() -> HashMap<String, String> {
732768
733769fn browser_families ( ) -> HashMap < String , Vec < String > > {
734770 [
735- ( "Android Browser" , vec ! [ "AN" , "MU" ] ) ,
771+ ( "Android Browser" , vec ! [ "AN" ] ) ,
736772 ( "BlackBerry Browser" , vec ! [ "BB" ] ) ,
737- ( "Baidu" , vec ! [ "BD" , "BS" ] ) ,
773+ ( "Baidu" , vec ! [ "BD" , "BS" , "H6" ] ) ,
738774 ( "Amiga" , vec ! [ "AV" , "AW" ] ) ,
739775 (
740776 "Chrome" ,
@@ -757,16 +793,18 @@ fn browser_families() -> HashMap<String, Vec<String>> {
757793 "V4" , "H4" , "1T" , "M5" , "0S" , "0C" , "ZR" , "D6" , "F6" , "RC" , "WD" , "P3" , "FT" , "A9" ,
758794 "X2" , "N3" , "GD" , "O9" , "Q3" , "F7" , "K2" , "P5" , "H5" , "V3" , "K3" , "Q4" , "G2" , "R2" ,
759795 "WX" , "XP" , "3I" , "BG" , "R0" , "JO" , "OL" , "GN" , "W4" , "QI" , "E1" , "RI" , "8B" , "5B" ,
760- "K4" , "WK" ,
796+ "K4" , "WK" , "T3" , "K5" , "MU" , "9P" , "K6" , "VR" , "N9" , "M9" , "F9" , "0P" , "0A" , "JR" ,
797+ "D3" , "TK" , "BP" , "2F" , "2M" , "K7" , "1N" , "8A" , "H7" , "X3" , "T4" , "X4" , "5O" , "8C" ,
798+ "3M" , "6I" , "2P" , "PU" , "7I" , "X5" , "AL" ,
761799 ] ,
762800 ) ,
763801 (
764802 "Firefox" ,
765803 vec ! [
766804 "FF" , "BI" , "BF" , "BH" , "BN" , "C0" , "CU" , "EI" , "F1" , "FB" , "FE" , "AX" , "FM" , "FR" ,
767805 "FY" , "GZ" , "I4" , "IF" , "IW" , "LH" , "LY" , "MB" , "MN" , "MO" , "MY" , "OA" , "OS" , "PI" ,
768- "PX" , "QA" , "S5" , "SX" , "TF" , "TO" , "WF" , "ZV" , "FP" , "AD" , "WL " , "2I " , "P9 " , "KJ " ,
769- "WY" , " VK", "W5" , "7C" , "N7" , "W7" , "8P" ,
806+ "PX" , "QA" , "S5" , "SX" , "TF" , "TO" , "WF" , "ZV" , "FP" , "AD" , "2I " , "P9 " , "KJ " , "WY " ,
807+ "VK" , "W5" , "7C" , "N7" , "W7" , "8P" ,
770808 ] ,
771809 ) ,
772810 (
@@ -801,19 +839,20 @@ fn browser_families() -> HashMap<String, Vec<String>> {
801839
802840pub fn mobile_only_browsers ( ) -> HashSet < String > {
803841 [
804- "36" , "AH" , "AI" , "BL" , "C1" , "C4" , "CB" , "CW" , "DB" , "DD " , "DT" , "EU" , "EZ" , "FK" , "FM" ,
842+ "36" , "AH" , "AI" , "BL" , "C1" , "C4" , "CB" , "CW" , "DB" , "3M " , "DT" , "EU" , "EZ" , "FK" , "FM" ,
805843 "FR" , "FX" , "GH" , "GI" , "GR" , "HA" , "HU" , "IV" , "JB" , "KD" , "M1" , "MF" , "MN" , "MZ" , "NX" ,
806- "OC" , "OI" , "OM" , "OZ" , "PU " , "PI" , "PE" , "QU" , "RE" , "S0" , "S7" , "SA" , "SB" , "SG" , "SK" ,
844+ "OC" , "OI" , "OM" , "OZ" , "2P " , "PI" , "PE" , "QU" , "RE" , "S0" , "S7" , "SA" , "SB" , "SG" , "SK" ,
807845 "ST" , "SU" , "T1" , "UH" , "UM" , "UT" , "VE" , "VV" , "WI" , "WP" , "YN" , "IO" , "IS" , "HQ" , "RW" ,
808846 "HI" , "PN" , "BW" , "YO" , "PK" , "MR" , "AP" , "AK" , "UI" , "SD" , "VN" , "4S" , "RF" , "LR" , "SQ" ,
809847 "BV" , "L1" , "F0" , "KS" , "V0" , "C8" , "AZ" , "MM" , "BT" , "N0" , "P0" , "F3" , "DU" , "D0" , "P1" ,
810848 "O4" , "XO" , "U0" , "B0" , "VA" , "X0" , "A5" , "X1" , "18" , "B5" , "B6" , "TC" , "A6" , "2X" , "F4" ,
811849 "YG" , "WR" , "NA" , "DM" , "1M" , "A7" , "XN" , "XT" , "XB" , "W1" , "HT" , "B7" , "B9" , "T0" , "I8" ,
812850 "O6" , "P7" , "O8" , "4B" , "A8" , "P8" , "1W" , "EV" , "Z0" , "I9" , "V4" , "H4" , "M5" , "0S" , "0C" ,
813851 "ZR" , "D6" , "F6" , "P3" , "FT" , "A9" , "X2" , "NI" , "FG" , "TH" , "N3" , "GD" , "O9" , "Q3" , "F7" ,
814- "K2" , "N4" , "P5" , "H5" , "V3" , "G2" , "BG" , "OL" , "II" , "TL" , "M6" , "Y3" , "M7" , "GN" , "D3 " ,
852+ "K2" , "N4" , "P5" , "H5" , "V3" , "G2" , "BG" , "OL" , "II" , "TL" , "M6" , "Y3" , "M7" , "GN" , "JR " ,
815853 "IG" , "HW" , "4O" , "OU" , "5P" , "KE" , "5A" , "TT" , "6P" , "G3" , "7P" , "VU" , "F8" , "L4" , "DK" ,
816- "DP" , "KL" , "K4" , "N6" , "KU" , "WK" , "M8" , "UP" , "ZT" ,
854+ "DP" , "KL" , "K4" , "N6" , "KU" , "WK" , "M8" , "UP" , "ZT" , "9P" , "N8" , "VR" , "N9" , "M9" , "F9" ,
855+ "0P" , "0A" , "2F" , "2M" , "K7" , "1N" , "8A" , "H7" , "X3" , "X4" , "5O" , "6I" , "7I" , "X5" ,
817856 ]
818857 . into_iter ( )
819858 . map ( |f| f. to_owned ( ) )
0 commit comments