先给结论:
我们需要屏蔽一些搜索公司(对seo没有任何作用,就是爬虫)或者假蜘蛛的ua,直接添加进ua黑名单
MauiBot
MegaIndex.ru
bytedance
MJ12bot
SemrushBot
Windows NT 5
BLEXBot
DotBot
CocCocBot
ImagesiftBot
Apache-HttpClient/4.5.2 (Java/1.8.0_151)
Windows NT 6
AhrefsBot
Macintosh
python
Fedora
X11
WOW64
如果需要改为正则表达式方式如下:
(HTTrack|MegaIndex\.ru|bytedance|MJ12bot|SemrushBot|Windows NT 5|BLEXBot|DotBot|CocCocBot|ImagesiftBot|Windows NT 6|AhrefsBot|Macintosh|python|Fedora|X11)
后续更多类容分析见👉真实用户ua分析
当您需要根据请求的User-Agent字段进行访问控制时,请配置User-Agent黑/白名单功能,实现对请求过滤。
User-Agent黑名单:黑名单内的User-Agent字段均无法访问当前资源。
如果您的User-Agent字段被加入黑名单,该带有User-Agent字段的请求仍可访问到全站加速节点,但是会被全站加速节点拒绝并返回403,全站加速日志中仍会记录这些黑名单中的User-Agent字段请求记录。
User-Agent白名单:只有白名单内的User-Agent字段才能访问当前资源,白名单以外的User-Agent字段均无法访问当前资源。
常见的网络恶意垃圾爬虫蜘蛛
上面说的搜索引擎爬虫能给网站带来流量,也有许多爬虫除了增加服务器负担,对网站没任何好处,应该屏蔽掉。
1、MJ12Bot
MJ12Bot是英国著名SEO公司Majestic的网络爬虫,其抓取网页给需要做SEO的人用,不会给网站带来流量。
2、AhrefsBot
AhrefsBot是知名SEO公司Ahrefs的网页爬虫。其同样抓取网页给SEO专业人士用,不会给网站带来流量。
3、SEMrushBot
SEMrushBot也是SEO、营销公司的网络爬虫。
4、DotBot
DotBot是Moz.com的网页爬虫,抓取数据用来支持Moz tools等工具。
5、MauiBot
MauiBot不同于其他爬虫,这个爬虫连网站都没有,UA只显示一个邮箱:”MauiBot(crawler.feedback+wc gm ail.com)“。神奇的是这个看起来是个人爬虫,竟然遵循robots协议,算得上垃圾爬虫的一股清流。
6、MegaIndex.ru
这是一个提供反向链接查询的网站的蜘蛛,因此它爬网站主要是分析链接,并没有什么作用。遵循robots协议。
7、BLEXBot
这个是webmeup下面的蜘蛛,作用是收集网站上面的链接,对我们来说并没有用处。遵循robots协议。
等等……………
主要是将从网站日志中发现的一些异常抓取的蜘蛛屏蔽掉,我上面列举的是一些常见的对我们网站没啥用处的蜘蛛,将这些蜘蛛屏蔽掉就好了。
下面是具体教程:
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:43.0) Gecko/20100101 Firefox/43.0
这条信息是一个浏览器标识字符串,它表明了使用的是 Mozilla Firefox 浏览器,版本号为 43.0。这个字符串中还包含了用户使用的操作系统信息,此处为 Windows 7(Windows NT 6.1),以及浏览器的其他相关信息。
Windows NT 6.1 是什么系统
Windows NT 6.1是微软发布的操作系统,也被称为Windows 7。它于2009年7月22日正式发布。相比于前代的Vista,Windows NT 6.1改进了许多问题,并提供了更加流畅和稳定的用户体验。
Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US) AppleWebKit/530.19.2 (KHTML, like Gecko) Version/4.0.2 Safari/530.19.1
这个是一个浏览器标识字符串,通常用于标识浏览器类型、版本等信息。根据这个字符串,可以看出它是使用Safari浏览器,版本号为4.0.2,运行在Windows Vista操作系统上。其中,”Windows NT 6.0″指的是Windows Vista操作系统的版本号。
Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.5060.53 Safari/537.36
这个字符串表示使用的是Chrome浏览器,版本号为103.0.5060.53,运行在Windows 8.1操作系统上。”Windows NT 6.3″指的是Windows 8.1操作系统的版本号,”Win64; x64″表示64位的系统。
Mozilla/5.0 (Windows NT 10.0; WOW64; rv:48.0) Gecko/20100101 Firefox/48.0
这个字符串表示使用的是Firefox浏览器,版本号为48.0,运行在Windows 10操作系统上。”Windows NT 10.0″指的是Windows 10操作系统的版本号,”WOW64″表示64位的系统,”rv:48.0″指的是Firefox浏览器的版本号。
WOW64 是Windows-on-Windows 64-bit的缩写,它是一个Windows操作系统的子系统。它为现有的32位应用程序提供了32位的模拟,使大多数32位应用程序在无需修改的情况下运行在Windows 64位版本上
WOW64不会出现在手机或搜索引擎的UA中。
WOW64是针对32位应用程序在64位操作系统中的模拟,它只出现在Windows操作系统中,在手机和搜索引擎等其他平台中,没有相关的应用。
Gecko/20100101是浏览器标识,用于标明浏览器基于Gecko引擎,并表示其版本号。Gecko是一种开源的网页排版引擎,常见于Mozilla Firefox等浏览器中。
Gecko/20100101不会出现在手机或搜索引擎的UA中。
Gecko是一种开源的网页排版引擎,常见于Mozilla Firefox等浏览器中,在手机和搜索引擎等其他平台中,没有相关的应用。
Gecko/20100101不会出现在火狐手机浏览器中。Gecko是一种开源的网页排版引擎,常见于Mozilla Firefox等桌面浏览器中,而不是手机浏览器。另外,搜索引擎的User-Agent也不会包含Gecko信息。
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36 Edg/119.0.0.0
这个字符串表示使用的是Edge浏览器,版本号为119.0.0.0,运行在Windows 10操作系统上。”Windows NT 10.0″指的是Windows 10操作系统的版本号,”Win64; x64″表示64位的系统。
Mozilla/5.0 (Linux; Android 13; V2199A; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/87.0.4280.141 Mobile Safari/537.36 VivoBrowser/16.7.0.2
这个字符串表示使用的是VivoBrowser浏览器,版本号为16.7.0.2,运行在Android 13操作系统上,设备型号为V2199A。”Linux”表示操作系统是Linux,”Android 13″表示Android版本号是13,”wv”表示设备是移动设备,”AppleWebKit/537.36 (KHTML, like Gecko)”表示使用的WebKit内核,”Version/4.0 Chrome/87.0.4280.141 Mobile Safari/537.36″表示使用的Chrome浏览器版本是87.0.4280.141,Safari浏览器版本是537.36
Mozilla/5.0 (Linux; Android 11; CMA-AN40 Build/HONORCMA-AN40; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/97.0.4692.98 Mobile Safari/537.36 T7/13.45 light/1.0 SP-engine/2.83.0 baiduboxapp/13.45.0.10 (Baidu; P1 11)
Build/
: 这通常表示这是一个构建标识符,通常用于标识设备或软件的构建版本
这个字符串表示使用的是百度浏览器(baiduboxapp),版本号为13.45.0.10,运行在Android 11操作系统上,设备型号为CMA-AN40。”Linux”表示操作系统是Linux,”Android 11″表示Android版本号是11,”CMA-AN40 Build/HONORCMA-AN40″表示设备型号是CMA-AN40,”wv”表示设备是移动设备,”AppleWebKit/537.36 (KHTML, like Gecko)”表示使用的WebKit内核,”Version/4.0 Chrome/97.0.4692.98 Mobile Safari/537.36″表示使用的Chrome浏览器版本是97.0.4692.98,Safari浏览器版本是537.36。
Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Mobile Safari/537.36
这个字符串表示使用的是Chrome浏览器,版本号为119.0.0.0,运行在Android 10操作系统上,设备可能是一款移动设备。”Linux”表示操作系统是Linux,”Android 10″表示Android版本号是10,”K”表示设备型号未知,”AppleWebKit/537.36 (KHTML, like Gecko)”表示使用的WebKit内核,”Chrome/119.0.0.0″表示使用的Chrome浏览器版本是119.0.0.0,”Mobile Safari/537.36″表示使用的Safari浏览器版本是537.36。
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/600.2.5 (KHTML, like Gecko) Version/8.0.2 Safari/600.2.5 (Amazonbot/0.1; +https://developer.amazon.com/support/amazonbot)
这个字符串表示使用的是Safari浏览器,版本号为8.0.2,运行在Macintosh操作系统上,版本号为10.10.1。”Mozilla/5.0″表示遵循Mozilla基金会制定的Web浏览器规范,”AppleWebKit/600.2.5″表示使用的是AppleWebKit浏览器引擎,”KHTML, like Gecko”表示浏览器内核使用的是KHTML,类似于Gecko浏览器引擎,”Version/8.0.2 Safari/600.2.5″表示使用的Safari浏览器版本号是8.0.2,”Amazonbot/0.1″表示使用的是亚马逊的抓取机器人,” https://developer.amazon.com/support/amazonbot “是亚马逊机器人的官方支持页面。
Mozilla/5.0 (compatible; AhrefsBot/7.0; +http://ahrefs.com/robot/)
AhrefsBot是一个网络爬虫,用于抓取和索引网站内容,以便Ahrefs在线营销工具集能够分析和报告关于网站性能的数据。AhrefsBot的访问频率取决于它是否检测到网站内容的更新,并且可以在网站地图和日志文件中记录其访问活动。根据其官方文档,AhrefsBot还可以触发警报和重新抓取网站,以便及时更新索引。
Mozilla/5.0 (X11; Linux i686) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.66 Safari/537.36
这个字符串表示使用的是Chrome浏览器,版本号为30.0.1599.66,运行在Linux操作系统上。”Mozilla/5.0″表示遵循Mozilla基金会制定的Web浏览器规范,”X11; Linux i686″表示操作系统是Linux,i686表示处理器类型是x86架构的64位处理器,”AppleWebKit/537.36 (KHTML, like Gecko)”表示使用的WebKit浏览器引擎,”Chrome/30.0.1599.66 Safari/537.36″表示使用的Chrome浏览器版本号是30.0.1599.66,Safari浏览器版本号是537.36。
Mozilla/5.0 (X11; Fedora; Linux x86_64; rv:94.0) Gecko/20100101 Firefox/95.0
Fedora不是手机端,它是一个Linux发行版,专为桌面和服务器环境设计。虽然Fedora可以在移动设备上运行,但它并不是为手机或平板电脑设备设计的。
这个用户代理字符串表示你正在使用Firefox 95.0浏览器,运行在基于Fedora的Linux x86_64系统上。Fedora是一个Linux发行版,由Red Hat公司赞助和开发。X11则是一个图形化用户界面系统,它为图形用户界面提供了许多基本元素,如窗口、按钮和菜单。Linux x86_64指的是你的操作系统是64位的Linux系统。rv:94.0指的是你的浏览器版本是94.0,这个版本号的含义取决于所使用的浏览器引擎(在这里是Gecko)。
X11,也叫做X Window系统,是一种位图显示的视窗系统。它是在Unix和类Unix操作系统,以及OpenVMS上建立图形用户界面的标准工具包和协议,并可用于几乎所有已有的现代操作系统。
X11不是搜索引擎或手机浏览器。X11是一种图形显示系统,用于在Unix和类Unix操作系统上建立图形用户界面。它是一种标准的工具包和协议,用于在计算机上创建窗口、图标和图形用户界面。与搜索引擎和手机浏览器不同,X11不是用于搜索互联网或浏览网页的工具。
Mozilla/5.0 (Macintosh; Intel Mac OS X 12_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36 Edg/114.0.1264.71
用户代理字符串表明你正在使用Edge浏览器,版本是114.0.1264.71,运行在Macintosh电脑上的Mac OS X 12.5系统上。
Macintosh是苹果公司自1984年起开发的个人消费型计算机,包含如:iMac、Mac mini、Macbook Air、Macbook Pro、Macbook、Mac Pro等计算机。使用独立的macOS系统,最新的macOS系列基于NeXT系统开发,不支持兼容。是一套完备而独立的操作系统。
Mozilla/5.0 (compatible; Dataprovider.com)
你的用户代理字符串表明你正在使用一个名为Dataprovider.com的爬虫或数据收集工具,而不是一个常见的浏览器。这个字符串通常用于标识来自搜索引擎爬虫或其他类似的数据收集工具的请求。
Dataprovider.com可能是一个专门用于数据采集、抓取或分析的工具,而不是一个常规的浏览器。这个字符串表示该工具正在以兼容的方式发送请求,可能是在模拟浏览器行为或进行网页抓取任务。
Dataprovider.com不是一个主流的搜索引擎。主流搜索引擎通常指的是像Google、Bing、Yahoo等被广大用户广泛使用的搜索引擎
Dalvik/2.1.0 (Linux; U; Android 9.0; ZTE BA520 Build/MRA58K)
你的问题中提到的字符串”Dalvik/2.1.0 (Linux; U; Android 9.0; ZTE BA520 Build/MRA58K)”是一个Android设备相关的信息。
- “Dalvik”是Google的Android平台中使用的一种虚拟机,它在Android系统启动时加载应用程序代码并在运行时管理它们。
- “2.1.0”是Dalvik版本号,这个版本号通常反映了Android系统的一个特定版本。
- “Linux”表明这个设备运行的是一个Linux内核。
- “U”可能代表”userspace”,指的是运行在Linux内核之上的用户空间应用程序。
- “Android 9.0″是设备的操作系统版本。
- “ZTE BA520 Build/MRA58K”表明这个设备是中兴的BA520型号,并且它的内部版本号是MRA58K。
“Dalvik/2.1.0 (Linux; U; Android 9.0; ZTE BA520 Build/MRA58K)”不是手机浏览器或者APP。这是一个Android设备的信息,包括设备型号、操作系统版本、以及Dalvik版本号等。
Dalvik是Google公司自己设计用于Android平台的Java虚拟机
Dalvik本身并不是一个手机浏览器。Dalvik是Android系统中使用的一种虚拟机,用于在设备上运行应用程序。它负责将应用程序的代码转化为可以在设备上运行的程序。
手机浏览器通常是一种用于在移动设备上浏览网页的应用程序。在Android系统中,有许多不同的手机浏览器可供选择,如Chrome、Firefox、Edge等。这些浏览器可以让你在设备上浏览网页、获取信息、购买物品等。
python-requests/2.31.0
看起来你在谈论Python的requests库的版本2.31.0。这个库是一个用于发送HTTP请求的第三方库,它使得发送GET、POST等请求变得非常简单。
如果你在使用requests库时遇到了问题,我会很乐意帮助你解决。但请记住,我需要更具体的问题描述才能提供有效的帮助。例如,如果你正在尝试实现某种功能,但不知道如何使用requests库来实现,那么最好提供一些关于你正在尝试实现的功能的详细信息。
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.129 Safari/537.36
你的用户代理字符串表明你正在使用一个基于Linux的Chrome浏览器。这个字符串通常用于标识浏览器类型、版本和运行环境等信息。
以下是对你提供的用户代理字符串的简单解析:
- Mozilla/5.0:这是浏览器的标识符,表示这是一个基于Mozilla的浏览器。
- X11; Linux x86_64:这表明你的操作系统是Linux,并且是64位的。X11是一种在大多数图形环境中使用的图形显示协议。
- AppleWebKit/537.36:这是浏览器的布局引擎,AppleWebKit是由Apple开发的,广泛用于WebKit浏览器(如Safari和Chrome)。
- KHTML, like Gecko:这表明你的浏览器支持KHTML,这是一个开源的网页排版引擎,类似于Gecko(如Firefox使用的排版引擎)。
- Chrome/81.0.4044.129:这表明你的浏览器是Chrome,版本号为81.0.4044.129。
- Safari/537.36:这是你的浏览器标识符,表示这是一个与Safari相似的浏览器。
如果你在使用这个浏览器时遇到问题,可能需要考虑升级到更新的版本,或者检查你的操作系统和浏览器是否兼容。如果你需要关于如何进行这些操作的帮助,我会很乐意提供更多的信息。
基于Linux的Chrome浏览器,而不是手机浏览器。
Mozilla/5.0 (Linux; U; Android 11; zh-cn; PDAM10 Build/RKQ1.200903.002) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/83.0.4103.106 MQQBrowser/14.5 Mobile Safari/537.36
你的用户代理字符串表明你正在使用的是一部运行Android 11操作系统的手机,浏览器是MQQBrowser,版本号为14.5。“Linux; U;”指的是浏览器运行在Linux操作系统上。“U”可能表示该浏览器是移动版或适用于通用操作系统的版本。
Linux; U;Android 13和Linux; Android 13有什么区别
Linux; U; Android 13和Linux; Android 13在本质上没有区别。它们都表示运行Android 13操作系统的设备。Linux是一种开源的操作系统,而Android是基于Linux的一种移动设备操作系统。在Android系统中,通常使用Linux内核来提供底层的功能和安全性。
因此,无论是”Linux; U; Android 13″还是”Linux; Android 13″,它们都指代运行Android 13操作系统的设备,只是可能在不同上下文或不同方式下进行表述。
Apache-HttpClient/4.5.2 (Java/1.8.0_151)
这个标识符表示一个使用Apache HttpClient库的Java应用程序,版本号为4.5.2,并且运行在Java 1.8.0_151版本上。Apache HttpClient是一个流行的Java库,用于发送HTTP请求和接收HTTP响应。这个标识符通常会出现在网络请求的User-Agent头中,以便服务器能够识别客户端使用的软件和版本信息。不是一个手机浏览器或手机应用.
Mozilla/5.0 (compatible; coccocbot-web/1.0; +http://help.coccoc.com/searchengine)
这个标识符表明了一个名为CocCocBot的网络爬虫正在访问您的网站。CocCocBot是由CocCoc公司开发的网络爬虫,用于抓取和索引网站内容,以便在CocCoc搜索引擎中提供搜索结果。
与大多数搜索引擎爬虫一样,CocCocBot的访问并不一定意味着有人在监视您的网站。它只是根据预设的规则和算法自动访问和抓取网站内容。CocCocBot的访问通常是为了索引网站内容,以便在CocCoc搜索引擎中提供搜索结果。