Werkzeug: Werkzeug ์‚ฌ์šฉ์ž ์—์ด์ „ํŠธ ๊ตฌ๋ฌธ ๋ถ„์„์ด Motorola One Macro Android ํœด๋Œ€ํฐ์— ๋Œ€ํ•ด ํ•ด์ œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์— ๋งŒ๋“  2020๋…„ 09์›” 03์ผ  ยท  8์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: pallets/werkzeug

๋‚˜๋Š” ํ”Œ๋ผ์Šคํฌ ์•ฑ์—์„œ ์ด๊ฒƒ์„ ๋ฐœ๊ฒฌํ–ˆ์ง€๋งŒ werkzeug๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ useragent ์ •๋ณด๋ฅผ ๊ตฌ๋ฌธ ๋ถ„์„ํ•˜๊ณ  ํ”Œ๋ผ์Šคํฌ ์š”์ฒญ ๊ฐ์ฒด์™€ ๋…๋ฆฝํ˜• werkzeug useragent ํŒŒ์„œ์—์„œ ๋™์ผํ•œ ๋™์ž‘์„ ๋ณด์•˜์Šต๋‹ˆ๋‹ค.

"macro"(์žฅ์น˜ ๋ชจ๋ธ)์— ํ•˜์œ„ ๋ฌธ์ž์—ด "mac"์ด์žˆ๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ "๋ฆฌ๋ˆ…์Šค"๋ฐ / ๋˜๋Š” "์•ˆ๋“œ๋กœ์ด๋“œ 9"๋กœ ๋ฎ์–ด ์จ์•ผํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

>>> from werkzeug.useragents import UserAgent
>>> UserAgent("Mozilla/5.0 (Linux; Android 9; motorola one macro) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.111 Mobile Safari/537.36").platform
'macos'

์ด useragent ๋ฌธ์ž์—ด์˜ platform ๋Š” "android"๊ฐ€ ๋  ๊ฒƒ์œผ๋กœ ์˜ˆ์ƒํ•ฉ๋‹ˆ๋‹ค.

ํ™˜๊ฒฝ : Linux

  • Python ๋ฒ„์ „ : 3.7.3
  • Werkzeug ๋ฒ„์ „ : 1.01
bug user-agent

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

์‚ฌ๋‚ด์—์„œ ์ˆ˜ํ–‰ํ•˜๋Š” ๋Œ€์‹  ua-parser ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์— ๋Œ€ํ•œ ์ข…์†์„ฑ์„ ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ์„ ๊ณ ๋ คํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ๋งค์šฐ ํฐ ํ…Œ์ŠคํŠธ ์„ธํŠธ ๋ฅผ ๊ฐ€์ง„ ๊ฝค ์ธ๊ธฐ์žˆ๋Š” ํฌ๋กœ์Šค ์–ธ์–ด ์ฝ”์–ด๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ”„๋กœ์ ํŠธ์™€ ๊ทธ๊ฒƒ์˜ ๋ฆฌ๋ทฐ๋ฅผํ–ˆ๋‹ค. ํŒŒ์ด์ฌ ๋ฒ„์ „์€ ๋งค์šฐ ๋‹ค์–‘ํ•œ ํŒŒ์ด์ฌ ๋ฒ„์ „์„ ์ง€์›ํ•˜๋ฉฐ ์ฝ”๋“œ ์ž์ฒด๋Š” ๋งค์šฐ ์•ˆ์ •์ ์ด์–ด์•ผํ•ฉ๋‹ˆ๋‹ค.

๋ชจ๋“  8 ๋Œ“๊ธ€

๋ฌธ์ œ๋Š” UserAgentParser ์ด ์ˆœ์ง„ํ•˜๊ฒŒ ํ‚ค์›Œ๋“œ๋ฅผ ๊ฒ€์ƒ‰ํ•˜์—ฌ ํ”Œ๋žซํผ์„ ์ฐพ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋‹ค์Œ์€ ๊ด€๋ จ ์ฝ”๋“œ ์Šค ๋‹ˆํŽซ์ž…๋‹ˆ๋‹ค.

    platforms: Any = (
        (" cros ", "chromeos"),
        ("iphone|ios", "iphone"),
        ("ipad", "ipad"),
        (r"darwin|mac|os\s*x", "macos"),
        ("win", "windows"),
        (r"android", "android"),
        ...

๊ท€ํ•˜์˜ ๊ฒฝ์šฐ "darwin|mac|os\s*x" ๋Š” "android" ๊ฐ€ ๊ฒ€์ƒ‰๋˜๊ธฐ ์ „์— ์ผ์น˜ํ•˜๋Š” ํ•ญ๋ชฉ์„ ์ฐพ์Šต๋‹ˆ๋‹ค. ๋‚ด๊ฐ€ ๋ณธ ์‚ฌ์šฉ์ž ์—์ด์ „ํŠธ ํ—ค๋”์—์„œ ๋ณด๋ฉด ํฌ๊ฒŒ ๋‹ค๋ฅผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋” ๋งŽ์€ ๊ฒฝํ—˜์ด์žˆ๋Š” ์‚ฌ๋žŒ์ด ๋” ๋‚˜์€ ์ •๊ทœ์‹ ํŒจํ„ด์„ ์ œ์•ˆ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ์˜ ๊ฐ„๋‹จํ•œ ํ‚ค์›Œ๋“œ ๊ฒ€์ƒ‰์ด ๋ถ€์ ์ ˆํ•˜๊ณ  ๋‹น์‹ ๊ณผ ๊ฐ™์ด ๋ˆˆ์— ๋„์ง€ ์•Š๋Š” ๋ฒ„๊ทธ๊ฐ€ ๋” ๋งŽ์ด์žˆ์„ ์ˆ˜ ์žˆ๋‹ค๋Š” ์ ์ด ์šฐ๋ ค๋ฉ๋‹ˆ๋‹ค.

์‚ฌ๋‚ด์—์„œ ์ˆ˜ํ–‰ํ•˜๋Š” ๋Œ€์‹  ua-parser ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์— ๋Œ€ํ•œ ์ข…์†์„ฑ์„ ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ์„ ๊ณ ๋ คํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ๋งค์šฐ ํฐ ํ…Œ์ŠคํŠธ ์„ธํŠธ ๋ฅผ ๊ฐ€์ง„ ๊ฝค ์ธ๊ธฐ์žˆ๋Š” ํฌ๋กœ์Šค ์–ธ์–ด ์ฝ”์–ด๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ”„๋กœ์ ํŠธ์™€ ๊ทธ๊ฒƒ์˜ ๋ฆฌ๋ทฐ๋ฅผํ–ˆ๋‹ค. ํŒŒ์ด์ฌ ๋ฒ„์ „์€ ๋งค์šฐ ๋‹ค์–‘ํ•œ ํŒŒ์ด์ฌ ๋ฒ„์ „์„ ์ง€์›ํ•˜๋ฉฐ ์ฝ”๋“œ ์ž์ฒด๋Š” ๋งค์šฐ ์•ˆ์ •์ ์ด์–ด์•ผํ•ฉ๋‹ˆ๋‹ค.

๋‹น์‹ ์ด ๊ทธ๊ฒƒ์— ๊ท ์—ด์„ ๊ฐ€์ง€๊ณ  ์‹ถ์ง€ ์•Š๋‹ค๋ฉด ๋‚˜๋Š” PR์„ ์ œ์•ˆ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ข‹์€ ํ•ด๊ฒฐ์ฑ… ์ธ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ๊ทธ๊ฒƒ์— ๊ท ์—ด์„ ๊ฐ–๊ณ  ์‹ถ๋‹ค. ๊ฐ์‚ฌ!

Rad! ๊ฐ์‚ฌ!

์ด ์—์ด์ „ํŠธ๊ฐ€ ์ผ์น˜ํ•˜๋Š” ๋ฐฉ์‹์„ ์ˆ˜์ •ํ•˜๊ธฐ ์œ„ํ•ด ์ผ์น˜ ๊ทœ์น™์„ ์กฐ์ •ํ•˜๋Š” PR์„ ๊ณ ๋ คํ•˜๊ฒŒ๋˜์–ด ๊ธฐ์ฉ๋‹ˆ๋‹ค.ํ•˜์ง€๋งŒ ์ด์— ๋Œ€ํ•œ ์ข…์†์„ฑ์„ ์ถ”๊ฐ€ํ•˜์ง€๋Š” ์•Š์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

ua-parser ํŒจํ‚ค์ง€๋Š” ์ •๊ทœ์‹ ํŒจํ„ด์„ ์‚ฌ์šฉํ•˜์—ฌ ์ ์ ˆํ•œ ์‚ฌ์šฉ์ž ์—์ด์ „ํŠธ๋ฅผ ์ฐพ์Šต๋‹ˆ๋‹ค (์šฐ๋ฆฌ์˜ ์ ‘๊ทผ ๋ฐฉ์‹๊ณผ ๋น„์Šทํ•˜์ง€๋งŒ ๋ถ„๋ช…ํžˆ ๋” ์ฒ ์ € ํ•จ). ์ •๊ทœ์‹ ํŒจํ„ด์€ ~ 5500 ์ค„์˜ ์ฝ”๋“œ๋ฅผ ์ฐจ์ง€ํ•ฉ๋‹ˆ๋‹ค.

ua-parser ๋ฅผ ์ข…์†์„ฑ์œผ๋กœ ์ถ”๊ฐ€ํ•˜๊ฑฐ๋‚˜ Werkzeug์— ์ฝ”๋“œ์˜ ์ผ๋ถ€๋ฅผ ํฌํ•จํ•˜์ง€ ์•Š๊ณ ๋Š” ์™„์ „ํ•œ UserAgentParser ๋ฅผ ์ œ๊ณต ํ•  ์ˆ˜ ์—†๋‹ค๋Š” ๊ฒƒ์ด ๋ถ„๋ช…ํ•˜๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

๋˜๋Š” readme ๋ฐ / ๋˜๋Š” ๋ฌธ์„œ์— ๋ฉ”์‹œ์ง€๋ฅผ ์ถ”๊ฐ€ํ•˜์—ฌ UserAgentParser ๊ฐ€ ๊ธฐ๋ณธ์ด๋ฉฐ ๋งŽ์€ ์‹œ๋‚˜๋ฆฌ์˜ค์—์„œ ์ž‘๋™ํ•˜์ง€ ์•Š์„ ๊ฒƒ์ž„์„ ์„ค๋ช… ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ํ”Œ๋žซํผ ๋ฌธ์ž์—ด์„ ๋‹ค๋ฃจ๊ธฐ ์œ„ํ•ด # 1989๋ฅผ ์—ด์—ˆ์ง€๋งŒ ์—ฌ๊ธฐ์—์„œ ๋Œ€ํ™”์˜ ๋‚˜๋จธ์ง€ ๋ถ€๋ถ„์— ๋Œ€ํ•œ ์™„์ „ํ•œ ์ˆ˜์ •์ด ์•„๋‹™๋‹ˆ๋‹ค.

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰

๊ด€๋ จ ๋ฌธ์ œ

alexgurrola picture alexgurrola  ยท  5์ฝ”๋ฉ˜ํŠธ

d42 picture d42  ยท  6์ฝ”๋ฉ˜ํŠธ

Nessphoro picture Nessphoro  ยท  6์ฝ”๋ฉ˜ํŠธ

mrx23dot picture mrx23dot  ยท  6์ฝ”๋ฉ˜ํŠธ

KangOl picture KangOl  ยท  16์ฝ”๋ฉ˜ํŠธ