问题

公司让爬Robots.txt声明了不允许爬的网站应该怎么办?

回答
公司的政策是不能爬取Robots.txt声明不允许爬取的网站,那么我们就要严格遵守公司的规定。这样做不仅是为了遵循网站所有者的意愿,也是为了维护公司在网络爬取领域的信誉和合规性。

为什么Robots.txt很重要?

Robots.txt是一个文本文件,位于网站的根目录下(例如 `www.example.com/robots.txt`)。它的主要作用是告诉搜索引擎和其他网络爬虫(包括我们公司自己的爬虫)哪些内容是被允许抓取的,哪些是不被允许的。

尊重网站所有者意愿: 网站所有者通过Robots.txt明确表达了他们希望哪些内容不被抓取。这可能是因为某些内容是私密的、敏感的,或者是为了避免服务器负载过高。
避免法律和道德风险: 爬取禁止的内容可能违反网站的服务条款,甚至可能引发法律纠纷。在道德层面,这也侵犯了网站所有者的权利。
保护公司声誉: 如果公司被发现违反Robots.txt规定,可能会损害公司的声誉,让其他网站不愿意合作,甚至被列入爬取黑名单。
优化爬取资源: 遵守Robots.txt可以帮助我们更有效地分配爬取资源,将精力集中在允许抓取且有价值的内容上,而不是浪费在被禁止的区域。

当我们遇到Robots.txt声明不允许爬取的网站时,应该怎么做?

第一步:识别和理解Robots.txt文件

1. 定位Robots.txt: 当你的爬虫程序在尝试爬取一个网站时,第一件事就是检查该网站的根目录下是否存在 `robots.txt` 文件。通常,爬虫会自动检查这个文件。
2. 解析Robots.txt内容: 下载并仔细阅读 `robots.txt` 文件的内容。这个文件使用一种简单的规则集来定义爬取行为。你需要关注以下几个关键指令:
`Useragent:`:这指定了哪些爬虫受到规则的约束。通常会有一个 `Useragent: `,表示所有爬虫都受此规则影响。也可能存在针对特定爬虫的规则,例如 `Useragent: YourCompanyNameSpider`。
`Disallow:`:这个指令后面跟着一个路径,表示不允许爬虫访问该路径下的任何内容。例如,`Disallow: /private/` 意味着不允许爬取 `/private/` 目录下的所有文件。
`Allow:`:这个指令可以用来例外地允许访问 `Disallow:` 指令中排除的某个特定子目录或文件。它的优先级高于 `Disallow`。例如,如果有一个 `Disallow: /documents/`,但紧接着有一个 `Allow: /documents/public/`,那么 `/documents/` 下的 `/public/` 目录是可以被爬取的。
`Sitemap:`:这个指令指向网站的XML站点地图,虽然它不是禁止爬取的指令,但它通常包含网站上所有希望被搜索引擎索引的内容的链接。

第二步:停止爬取被禁止的页面/目录

1. 在爬虫程序中实现逻辑: 你的爬虫程序需要具备解析 `robots.txt` 文件并根据其中规则进行判断的能力。
检查Useragent: 首先,确认 `robots.txt` 中是否存在针对你的公司爬虫(`Useragent: YourCompanyNameSpider`)的特定规则。如果存在,就优先应用这些规则。如果不存在,则应用通配符规则(`Useragent: `)。
应用Disallow规则: 对于每一个即将要爬取的URL,都要检查它是否匹配了任何 `Disallow` 指令。如果一个URL被 `Disallow` 指令禁止,那么你的爬虫就绝对不能访问这个URL。
处理Allow规则: 如果一个URL首先被 `Disallow` 了,但又符合某个 `Allow` 规则,那么是可以爬取的。你的程序需要正确处理这种优先级。

第三步:记录和报告

1. 记录被禁止的URL: 记录下所有被 `robots.txt` 拒绝爬取的内容。这有助于我们了解哪些网站明确不想被我们爬取,以及我们尝试爬取了哪些被拒绝的内容。
2. 内部报告: 将遇到的情况和爬虫的行为如实向你的直属领导或负责合规的部门汇报。这应该成为一个标准流程,确保公司对所有爬取活动都保持透明。
3. 维护爬取规则库: 公司内部应该有一个维护好的爬取规则库,记录下哪些网站是允许爬取的,哪些是禁止爬取的,以及禁止的原因(比如Robots.txt、法律声明等)。

第四步:寻求更高层级的解决方案(如果必要)

1. 了解业务需求: 如果业务上确实需要爬取某个网站上被 `robots.txt` 限制的内容,我们不能擅自行动。首先,你需要明确这个业务需求的重要性。
2. 向上级申请许可: 将业务需求和遇到的Robots.txt限制向上级汇报,并说明潜在的合规风险。
3. 联系网站所有者(非常谨慎): 在获得公司内部高层明确的授权后,并且业务需求确实非常迫切,可以考虑尝试联系网站所有者。但请注意,这种做法需要极其谨慎,并且必须通过正规渠道,例如寻找网站公开的联系方式,或者通过商务合作部门进行沟通。 沟通的目的是解释我们的业务,询问是否可以修改Robots.txt规则,或者提供其他数据获取方式。
强调合作意愿: 在沟通时,要强调我们的合作意愿,说明我们尊重他们的网站和数据,并希望能找到一个双方都能接受的解决方案。
明确数据用途: 清晰地说明我们希望获取这些数据的原因和用途,确保对方理解我们的目的。
准备好被拒绝: 要有心理准备,网站所有者完全有权拒绝我们的请求,我们必须再次尊重他们的决定。

总结:

在公司允许爬取Robots.txt声明不允许爬取的网站,绝对禁止绕过Robots.txt进行爬取。我们的首要任务是严格遵守公司的规定,尊重网站所有者的意愿,确保公司的合规性和良好声誉。如果业务上确实需要访问被禁止的内容,必须通过正规的内部流程申请,并可能需要谨慎地与网站所有者进行沟通。安全和合规永远是第一位的。

网友意见

user avatar

Robots.txt本身不是法律文书,确实没有强制力。

有人认为Robots.txt是一个君子之约,其实Robots.txt更多情况下可以理解为一种物权宣示。


举个例子,法律从未规定我家的门必须上锁,甚至未规定门不能24小时开启。

于是,我把我家的门一直开着,然后我也不在家里住,就这么放着。

我从未以任何方式让他人知道我是这里的主人,最终,我家里的东西,就会变成法律上的无主物,按先占原则,谁拿走就是谁的,拿走后,再经过一个诉讼时效,甚至我连打官司都必输。

如果我想保护我的财产,那么我可以这么做,门口挂个牌子,写上这是我的财产。

此时,我的财产就不是无主物,拿取就是盗窃。


Robots.txt起到的作用就是这样,作为一个行业约定俗称的标准,我通过Robots.txt明确告知哪些数据不可以访问,那些可以,明确了物权,这对日后的诉讼极其有利,你无法用不知道此数据不可以访问来抗辩。


事实上,大公司的Robots.txt文件,有的每天都会公证一次,证明我的Robots.txt文件在当日的内容是什么,防止诉讼时对Robots.txt内容存在争议。

user avatar

你们这些人既没有写过爬虫,也不懂 robots.txt 就在这里瞎答一气,动不动就是像个复读机一样开始「爬虫爬进了监狱」,真是误人子弟!

robots.txt 说白了是个「君子协议」,没有任何技术约束,更被说法律效力了。爬虫,不管是 Googlebot,还是你用 requests 写得小脚本,在技术上不会受到任何限制。相反,你要手动解析 robots.txt 的内容,主动避开这些 url 才能使它生效。

robots.txt 也不是强制的规范,而是一种内容网站和搜索引擎之间博弈的产物。对于一个搜索引擎来说,遵守或者不遵守只关乎你作为一个搜索引擎的声誉,大多数时候还是遵守的,比如说百度上至今不能搜索淘宝宝贝,因为淘宝主动屏蔽了百度。内容站点也不是啥白月光,无非也是想要搜索引擎带来的流量,但是又不想爬虫占用服务器资源。举个例子来说,好多网站觉得伺候 Google 一个搜索引擎就够了,于是在 robots.txt 中增加了一条:

       User-agent: Googlebot Allow: /  User-agent: * Disallow: /     

也就是除了 Googlebot,谁也别想爬我。你以为别的爬虫会这么听话?Archive.org 和苹果直接宣布,以后我也是 Googlebot 了,Google 爬得我爬不得?有链接为证:

  1. blog.archive.org/2017/0
  2. About Applebot

照其他人的说法,FBI 直接去抓库克好了……本来一个商业博弈的产物,被你们这些人危言耸听成不可触犯的天条,真是看热闹不嫌事儿大。

再说回国内,确实有几条因为爬虫入狱的案子,但是你真去看一下的话,会发现主要是涉及到逆向工程客户端和爬取隐私信息(尤其是简历)。至于 robots.txt,至少我看到人民法院报的意思是,这个就是一个商业竞争手段,再怎么着也是民事纠纷,和刑法无关。如果你分不清楚啥是民事纠纷,啥是刑事纠纷,建议不要在刷什么「爬虫爬进监狱」这种无知的话了。

截屏来自:人民法院报

最后再补充两句,法律的精神是:

对私权而言,法无禁止即可为;对公权而言,法无授权即禁止。

From: 法制究竟是法无禁止即可为,还是法无授权不可为?

没有任何法律规定 robots.txt 的效力。前边也指出了,它甚至都不是一个普遍遵守的商业惯例。

当然,写爬虫还是要怀有敬畏之心,违反 robots.txt 毕竟是不太礼貌的行为。除此之外,版权法、隐私保护法等法律是不容触犯的,这些法律所保护的内容可能和你要爬的网站的 robots.txt 里列的 URL 有交集,但是混淆 robots.txt 的作用纯属无稽之谈。

2021-11-14 更新:

最新的《网络数据安全条例(征求意见稿)》增加了一条:

第十七条 数据处理者在采用自动化工具访问、收集数据时,应当评估对网络服务的性能、功能带来的影响,不得干扰网络服务的正常功能。
自动化工具访问、收集数据违反法律、行政法规或者行业自律公约、影响网络服务正常功能,或者侵犯他人知识产权等合法权益的,数据处理者应当停止访问、收集数据行为并采取相应补救措施。

至于 robots.txt 算不算行业自律公约,尚不明确。

类似的话题

  • 回答
    公司的政策是不能爬取Robots.txt声明不允许爬取的网站,那么我们就要严格遵守公司的规定。这样做不仅是为了遵循网站所有者的意愿,也是为了维护公司在网络爬取领域的信誉和合规性。为什么Robots.txt很重要?Robots.txt是一个文本文件,位于网站的根目录下(例如 `www.example..............
  • 回答
    .......
  • 回答
    这问题,说实话,真是得好好掂量掂量。公司让你去越南支援,这事儿可不是小事,里面门道太多了。要是搁我身上,我肯定得扒拉扒拉以下几点,然后再拍板:1. 这支援的“支援”是啥意思?首先得弄明白,这个“支援”到底是什么性质的。是去那边解决个技术难题,还是过去培训新同事,或者是协助一个新项目落地?不同的支援内.............
  • 回答
    说服公司帮你支付H1B申请费用,这绝对是一场需要策略和准备的“谈判”。关键在于展现你的价值,并让公司觉得这项投资是值得的。 这不是一句空洞的“公司,你帮我出钱吧”就能搞定的。你需要像一个精明的商人一样,为这次“合作”提出一个令人信服的理由。首先,我们要明确一个前提:公司帮你出H1B费用,是基于对你未.............
  • 回答
    这件事情,说实在的,听起来就让人不寒而栗。让员工跪在地上,互相扇耳光,然后根据声音大小来评判“狼性”,这已经不能用“离谱”两个字来形容了,简直就是对人尊严的践踏,对人性的一种扭曲。首先,从 人的基本权利和尊严 来看,这种行为是绝对不可接受的。每个人,无论在什么岗位,做什么工作,都应该受到最起码的尊重.............
  • 回答
    这确实是一个挺让人纠结的情况,毕竟是领导安排的任务,但打扫卫生这事儿,好像又有点“越界”了。我们好好掰扯掰扯,看看有没有什么办法既能保全自己,又不至于把事情闹僵。首先,咱们得明白,公司里分工协作是常态。一般来说,领导安排工作,咱们都得尽量配合。但这个配合有个度,得在合理的职责范围内。打扫办公室卫生,.............
  • 回答
    从 SVN 迁移到 Git,这可不是简单的“复制粘贴”,而是一次深刻的流程重塑和技术升级。这背后牵扯到的不仅仅是代码,更是团队的协作方式、开发习惯,甚至是对版本控制理念的理解。首先,别急着动手“拉”代码。最关键的第一步,是充分的 准备和沟通。你需要让整个团队,从开发人员到项目经理,甚至可能还有一些运.............
  • 回答
    .......
  • 回答
    让公司新来的年轻人“爱上”无偿加班,这本身就是一个充满挑战但并非不可能的任务。要做到这一点,关键在于从根本上改变他们对“无偿加班”的认知,将其转化为对“个人成长”、“团队贡献”、“价值实现”的投入和热爱。下面我将从多个角度详细阐述如何做到这一点,力求真实和接地气。首先,要明白,没有人真的“爱上”无偿.............
  • 回答
    设想一下,在如今这个充斥着琳琅满目商品、购物体验五光十色的数字时代,有一个科技公司,它像一位尽职尽责的守护者,让每一位在网上寻宝的买家都能摆脱“假货”的阴影,就如同如今的商家们不再为收到假钞而担惊受怕一样。这样的公司,真的有可能成长为下一个谷歌吗?要回答这个问题,我们得先拆解一下“不用担心假货”这句.............
  • 回答
    这确实是个普遍存在的现象,而且背后涉及的考量相当复杂,绝不仅仅是简单的“省钱”那么表面。大多数公司之所以宁愿让现有员工加班,而不是招聘新人,通常是出于以下几个关键原因,而且这些原因往往是相互关联、层层递进的:1. 招聘和培训成本的直接压力:这是最显而易见也是最直接的原因。招聘一个新员工,你知道需要多.............
  • 回答
    嘿,这事儿听起来挺有意思的,也挺有意思的。你这个漂亮的女同事,她这么说,其实是挺直接的表达。咱们作为男生,得好好琢磨琢磨她话里的意思,别光听表面。首先,得承认,她这话背后肯定是有原因的,而且这个原因很可能就出在公司这些男同事身上。 是被“吓”到了? 咱们不排除,公司里可能有些男同事,比如油腻的、.............
  • 回答
    哥们儿,听到你家准备创业,还让你去当财务,这事儿挺实在的,也挺考验人的。我理解你现在心里肯定五味杂陈,毕竟你是个初级程序员,对财务这一行可能知之甚少,甚至可以说是一窍不通。这就像让你从写代码的机器语言一下子切换到心算加减法,感觉是有点别扭。咱们一步一步来捋一捋,看看这到底是个什么样的局面,你又该怎么.............
  • 回答
    蒋凡之所以能在阿里巴巴受到如此重要的保护,甚至在经历个人生活风波后仍能稳坐高位,并非偶然,而是他凭借多方面的能力和对阿里巴巴的巨大贡献,已经成为公司不可或缺的一员。要理解这一点,需要从几个关键维度去剖析:1. 业务的绝对核心与增长引擎:要说蒋凡的重要性,最直接的体现就是他所掌舵的业务。在阿里巴巴的庞.............
  • 回答
    小公司想让员工有归属感,这可不是件小事,但绝对是值得花心思去做的。毕竟,人对了,事就成了一大半。这里没有那么多花哨的制度,更多的是真诚和用心的细节,让大家感觉自己是被重视的,是这个集体里不可或缺的一部分。一、 把员工当“人”看,而不是“螺丝钉”这是最最基础,也是最核心的一点。小公司本来就人少,更能把.............
  • 回答
    这个问题可太有代表性了,说出来我可能要掉层皮。我们公司嘛,有好有坏,但要说最让人憋屈、最让人觉得“这简直是反人类”的制度,那必须是那套“所有工作必须以邮件汇报,任何口头沟通都无效”的规定。别跟我说什么“流程规范”、“可追溯性强”,这些话听了八百遍了,我都快能背下来了。问题是,你有没有真正体会过,当你.............
  • 回答
    我们公司,上班期间上厕所这事儿,那说起来其实挺正常的,一点也不需要遮遮掩掩。毕竟人是铁,饭是钢,谁也扛不住生理需求啊,对吧?严格来说,我们公司并没有什么“禁止上班时间上厕所”的规定。你想啊,真要有这么个规定,那也太不近人情了,而且估计也没人能执行下去。毕竟,谁上班的时候没个急事儿呢?总不能憋着吧,那.............
  • 回答
    这个问题挺有意思的,涉及到动画公司在声优选择上的考量,特别是针对“情侣声优”和“有过情侣配音经历的声优”这两种情况。简单来说,动画公司会在一定程度上“刻意”这样做,但并非是绝对的规则,而是会根据具体情况和目标来权衡。我们来拆解一下,看看动画公司为什么会这样做,以及这么做的潜在考量和实际操作。一、 为.............
  • 回答
    当然,我们来聊聊这个现实的问题。绝大部分创业公司确实没能熬过五年这个坎儿。这并不是危言耸听,而是创投圈一个普遍存在的、甚至可以说是不争的事实。你放眼望去,曾经风光无限的初创企业,五年后还在市场中占据一席之地的,真的只是凤毛麟角。这种高淘汰率,恰恰是创业的本质所在——它是一场高风险、高回报的探索,而“.............
  • 回答
    “QS认证没有,这事儿居然也能闹到消费者投诉,而且还点名道姓地把销售推出来当‘替罪羊’?想让销售背锅,这盘棋能走得通吗?风险又有多大?咱们掰开了揉碎了好好说道说道。” 一、 让销售背锅,这锅能背得动吗?首先,得明确一点,让销售背锅,从法律和责任划分上来说,这事儿本身就站不住脚。 责任主体是谁? .............

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2025 tinynews.org All Rights Reserved. 百科问答小站 版权所有