문제

사용자 에이전트 문자열을 어떻게 구문 분석합니까? 나는 얻고 싶다 :

  • 브라우저
  • 브라우저 버전
  • OS
  • OS 버전

사용자 에이전트 문자열에서. 내 앱은 Perl로 작성되었으며 이전에 사용했습니다. http :: BrowserDetect. 약간 날짜가 지정되어 있으며 더 이상 유지되지 않습니다. (편집 : 이후 업데이트되었습니다.) 실제 조회를 위해 Perl을 사용하는 데 아무런 관련이 없습니다.

나는 자동 구문 분석이 잃어버린 원인이라는 결론에 도달했습니다. 나는 분류되지 않은 UA 목록을 보여주고 수동으로 최신 상태로 유지하기 위해 Crud 유형 앱을 작성하려고 생각하고있었습니다.

내가 활용할 수있는 그러한 자원이 이미 존재합니까? 사용자 에이전트 정보를 찾아 HTTP 호출을 할 수 있다면 굉장 할 것입니다.

감사!

도움이 되었습니까?

해결책

userAgentString.com 사용자 에이전트 문자열에 대한 브라우저 및 OS 정보가 있습니다. 자신의 문자열을 제출할 '분석'상자도 있습니다. 자동으로 연결하는 것이 얼마나 쉬운 지 모르겠지만 원하는 종류의 정보가있는 것 같습니다.

원래 게시물에서 업데이트 (업벤트를 훔치고 싶지 않음) :

나는 이것을 저자에게서 돌려 받았다 http://useragentstring.com/:

간단한 API가 있지만 많은 사이트를 다시 코딩하려고하므로 가까운 시일 내에 변경 될 수 있습니다. 내 사이트에 링크하는 경우 양식 필드 또는 'UAS'라는 이름으로 QueryString에서 userAgentString을 보낼 수 있습니다.

http://www.useragentstring.com/?uas=opera/9.70%20(linux%20i686%20 ;%20U ;%20en-us)920presto/2.2.0

이것은 자동으로 문자열을 구문 분석합니다. 추가 및 getText = 모두

http://www.useragentstring.com/?uas=opera/9.70%20(linux%20i686%20 ;%20U ;%20en-us)920presto/2.2.0&gettext=all

agent_type = 브라우저와 같은 키 값 쌍의 텍스트 파일을 얻게됩니다.

다른 팁

브라우저 기능 프로젝트

Browscap.ini 파일은 브라우저 및 이름, 버전, JavaScript 지원 등과 같은 기능에 대한 많은 세부 정보를 제공하는 데이터베이스입니다.

브라우저 및 이름, 버전, JavaScript 지원 등과 같은 기능에 대한 많은 세부 정보를 제공하는 Browscap.ini.

PHP의 기본 get_browser () 함수는이 파일을 구문 분석하고 모든 브라우저의 세부 정보에 대한 전체 정보 세트를 제공하지만 php.ini browscap directive에 php_ini_system으로 표시되는 browscap.ini 파일에 대한 경로가 필요합니다.

http://browscap.org/

검색 가능한 UA 목록을 찾고있었습니다. user-agents.org는 검색 할 수 있지만 거의 충분한 데이터가 없었습니다. 나는 찾았다 http://www.botsvsbrowsers.com/. 광고로 어수선하지만 오른쪽에는 정확히 내가 찾고 있던 검색 창이 있습니다.

이 스레드는 몇 살이지만 여기에 사용자 에이전트를 검색하는 새로운 리소스가 있습니다. ua.theafh.net 540 만 에이전트. 예를 들어 브라우저 용 필터와 와일드 카드 검색을 사용할 수 있습니다. http://ua.theafh.net/list.php?s=%22%2A%22&include=yes&class=abr&do=desc - 검색 결과를 CSV로 다운로드 할 수 있습니다.

이 JSON에 인코딩 된 거미/봇 목록을 발견했습니다 https://github.com/monperrus/crawler-user-agents 2017 년 현재 정기적으로 업데이트 된 것으로 보입니다.

2017 년 대부분의 업데이트 리소스 :

https://techblog.willshouse.com/2012/01/03/ most-common-user-agents/

또한 목록을 TXT 형식으로 제공합니다.

우리는 소프트웨어, 운영 체제, 플랫폼, 하드웨어 유형, 소프트웨어 유형 및 렌더링 엔진으로 구성된 사용자 에이전트의 거대한 데이터베이스를 보유하고 있습니다.

https://developers.whatismybrowser.com/useragents/explore/

다른 모든 사용자 에이전트 목록은 관련 사용자 에이전트를 쉽게 탐색 할 수 있도록하는 평범한 작업을 수행 하므로이 목록을 작성할 때 사용자가 쉽게 디자인을 할 때 쉽게 우선 순위가되었습니다.

사용자 에이전트 파서에 액세스 할 수있는 무료 API에 가입 할 수도 있습니다.

https://developers.whatismybrowser.com/api/

당신이 사용할 수있는 http://botopedia.org. 또한 스푸핑을 방지하는 데 도움이되는 IP 검증을 제공합니다.

질문을 게시 한 후 http :: BrowserDetect 이후 업데이트되었습니다. 일단 설치되면 다음은 사용자 에이전트 문자열의 텍스트 파일을 구문 분석하는 데 사용하는 방법입니다.

cat user_agent_strings.txt | perl -nE 'use HTTP::BrowserDetect; $ua =  HTTP::BrowserDetect->new($_); say $ua->browser_string || "unknown";'
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top