抓取动态网页(详解如何通过创建Robots.txt来解决网站被重复抓取)
优采云 发布时间: 2022-01-12 06:08抓取动态网页(详解如何通过创建Robots.txt来解决网站被重复抓取)
我们在百度统计中查看网站的SEO建议时,总是发现“静态页面参数”项被扣18分。多次重复爬取”。一般来说,在静态页面上使用少量的动态参数不会对蜘蛛的抓取产生任何影响,但是如果在网站静态页面上使用过多的动态参数,则可能最终导致蜘蛛。多次反复爬行。
解决“在静态页面上使用动态参数会导致蜘蛛多次重复爬取”的SEO问题,我们需要使用Robots.txt(机器人协议)来限制百度蜘蛛对网站页面的爬取,robots .txt 是协议,而不是命令。robots.txt 是搜索引擎在访问 网站 时查看的第一个文件。robots.txt 文件告诉蜘蛛可以查看服务器上的哪些文件。当搜索蜘蛛访问一个站点时,它会首先检查站点根目录中是否存在 robots.txt。如果存在,搜索机器人会根据文件内容判断访问范围;如果文件不存在, all 的搜索蜘蛛将能够访问 网站 上没有密码保护的所有页面。
通过创建Robots.txt来解释如何解决网站被重复爬取,我们只需要设置一个语法。
User-agent:百度蜘蛛(只对百度蜘蛛有效)
Disallow: /*?* (禁止访问 网站 中的所有动态页面)
这样可以防止动态页面被百度索引,避免网站被蜘蛛重复爬取。有人说:“我的网站是一个伪静态页面,每个url前面都有html?怎么办?” 在这种情况下,使用另一种语法。
User-agent:百度蜘蛛(只对百度蜘蛛有效)
允许:.htm$(只允许访问以“.htm”为后缀的 URL)
这允许百度蜘蛛只 收录 您的静态页面,而不是索引动态页面。其实网站SEO知识还有很多,都需要我们一步步探索,在实践中发现真相。网站 关注用户体验是长期发展的基点。
防止网站被搜索爬取的一些方法:
首先在站点的根目录下创建一个 robots.txt 文本文件。搜索蜘蛛访问该站点时,首先会检查站点根目录下是否存在robots.txt。如果存在,搜索蜘蛛会首先读取这个文件的内容:
文件写入
User-agent:*这里*代表所有类型的搜索引擎,*是通配符,user-agent分号后面要加一个空格。
Disallow:/这个定义是禁止所有内容爬取网站
Disallow: /admin/ 这里的定义是禁止爬取admin目录下的目录
Disallow: /ABC/ 这里的定义是禁止爬取ABC目录下的目录
禁止:/cgi-bin/*.htm 禁止访问/cgi-bin/ 目录中所有以“.htm”为后缀的URL(包括子目录)。
Disallow: /*?* 禁止访问所有在 网站 中收录问号 (?) 的 URL
Disallow: /.jpg$ 禁止抓取来自网络的所有 .jpg 图像
Disallow:/ab/adc.html 禁止爬取ab文件夹下的adc.html文件。
allow: /cgi-bin/这个定义是允许cgi-bin目录下的目录被爬取
allow: /tmp 这里的定义是允许爬取tmp的整个目录
允许:.htm$ 只允许访问以“.htm”为后缀的 URL。
允许:.gif$ 允许抓取网页和 gif 格式的图片
站点地图:网站地图告诉爬虫这个页面是一个网站地图
下面列出的是比较知名的搜索引擎蜘蛛名称:
谷歌的蜘蛛:谷歌机器人
百度的蜘蛛:baiduspider
雅虎的蜘蛛:雅虎啜饮
MSN 的蜘蛛:Msnbot
Altavista 的蜘蛛:滑板车
Lycos 的蜘蛛:Lycos_Spider_(T-Rex)
Alltheweb 的蜘蛛:FAST-WebCrawler/
INKTOMI 的蜘蛛:啜食
搜狗的蜘蛛:搜狗网络蜘蛛/4.0 和搜狗inst spider/4.0
根据上面的说明,我们可以举一个大案子的例子。在搜狗的案例中,robots.txt的禁止爬取的代码是这样写的:
用户代理:搜狗网络蜘蛛/4.0
禁止:/goods.php
禁止:/category.php