gpt4 book ai didi

匹配最终用户浏览器的用户代理但不匹配爬虫的正则表达式,准确度 >90%

转载 作者:行者123 更新时间:2023-12-02 19:11:26 28 4
gpt4 key购买 nike

我正在尝试构建一个正则表达式,对于“人类导航的浏览器”的User-Agent:计算结果为 true,但对于机器人则为 false。不用说,匹配不会精确,但如果在 90% 的情况下都能正确匹配,那就足够好了。

到目前为止,我的方法是针对五种主要桌面浏览器(MSIE、Firefox、Chrome、Safari、Opera)的 User-Agent 字符串。具体来说,如果用户代理是机器人(Googlebot、msnbot 等),我希望正则表达式 NOT 匹配。

目前我正在使用以下正则表达式,它似乎达到了所需的精度:

^(Mozilla.*(Gecko|KHTML|MSIE|Presto|Trident)|Opera).*$

我观察到少量漏报,其中大部分是移动浏览器。异常(exception)情况全部匹配:

(BlackBerry|HTC|LG|MOT|Nokia|NOKIAN|PLAYSTATION|PSP|SAMSUNG|SonyEricsson)

我的问题是:鉴于所需的准确性级别,您将如何改进正则表达式?您能想到给定正则表达式的任何主要误报或漏报吗?

请注意,该问题专门针对基于正则表达式的User-Agent 匹配。还有很多其他方法可以解决这个问题,但这些超出了这个问题的范围。

最佳答案

您可以通过检查哪些用户代理访问 robots.txt 来构建黑名单。

关于匹配最终用户浏览器的用户代理但不匹配爬虫的正则表达式,准确度 >90%,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2508214/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com