这个web题打开后是一个网页,但是发现无论按什么键该页面都没有任何反应。
在网址栏按住Ctrl+U,看这个网页的源代码,发现这个网页禁用了很多东西,鼠标和键盘都起不到作用。
然后这里我们需要了解一个信息搜集爬虫协议robots.txt。
robots.txt基本介绍
robots.txt是一个纯文本文件,在这个文件中网站管理者可以声明该网站中不想被robots访问的部分,或者指定搜索引擎只收录指定的内容。当一个搜索机器人(有的叫搜索蜘蛛)访问一个站点时,它会首先检查该站点根目录下是否存在robots.txt,如果存在,搜索机器人就会按照该文件中的内容来确定访问的范围;如果该文件不存在,那么搜索机器人就沿着链接抓取。另外,robots.txt必须放置在一个站点的根目录下,而且文件名必须全部小写。
robots.txt是网站管理者写给爬虫的一封信,里面描述了网站管理者不希望爬虫做的事,比如:
- 不要访问某个文件、文件夹
- 禁止某些爬虫的访问
- 限制爬虫访问网站的频率
一个自觉且善意的爬虫,应该在抓取网页之前,先阅读robots.txt,了解并执行网站管理者制定的爬虫规则。
使用方法
在浏览器的网址搜索栏中,输入网站的根域名,然后再输入/robot.txt。比如,必应的robots.txt网址为https://cn.bing.com/robots.txt
robots.txt的内容
User-agent: 爬虫的名称
Disallow: 不允许爬虫访问的地址
Allow: 允许爬虫访问的地址
若User-agent是*,则表示对象是所有爬虫。
Disallow和Allow后面跟的是地址,地址的描述格式符合正则表达式(regex)的规则。因此可以在python中使用正则表达式来筛选出可以访问的地址。
不清楚的可看这篇
爬虫第一步:查看robots.txt - 知乎 (zhihu.com)
如何使用robots.txt及其详解_/robots.txt-CSDN博客
由回应可知,爬虫名称为*,不允许爬虫访问的地址为/0e1G7.php
然后输入/0e1G7.php访问。
发现flag在该文件里,名称为G7,然后抓取flag,并使其以base64编码后的形式输出。
然后用在线解码器解码即可得到flag。