在我没接触这一行时这个问题困扰了我很长时间,让我十分的不理解到底什么是爬虫,它难道是一种实体工具?,直到我学习python 深入分析了解以后才揭开了它神秘的面纱。
爬虫是什么呢?爬虫有简单的爬虫和复杂的爬虫。实际上简单的爬虫是一种 脚本 ,是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本。
脚本就是粗糙的,但往往非常实用的小程序(一般来说不会超过几千行,有时候也就几百几十行的代码构成)。举个简单的例子,你现在要从一个学生租房的网站上读取关于出租的学生公寓的信息。你一条一条去抄写肯定是不现实的。所以就要用爬虫。可以把一个信息类网站上几千条信息一次全部扒下来。百度,谷歌这类的搜索引擎你也可以认为是一种爬虫,只不过这类的技术十分的复杂,不是简单的脚本。
搜索引擎是如何工作的?其实就是通过网络爬虫技术,将互联网中数以百亿计的网页信息保存到本地,形成一个镜像文件,为整个搜索引擎提供数据支撑。
这样的技术首先就会涉及到一个十分重要并且人人关注的问题——是否违法?
仔细探究后总结出了如下观点:
1.遵守 Robots 协议,但有没有 Robots 都不代表可以随便爬,
2.限制你的爬虫行为,禁止近乎 DDOS 的请求频率,一旦造成服务器瘫痪,约等于网络攻击;
3.对于明显反爬,或者正常情况不能到达的页面不能强行突破,否则是 Hacker 行为;
4.审视清楚自己爬的内容,绝不能触碰法律的红线。
至此你应该明白,爬虫本身并不违法,而是要看你使用的方式和目的,还要看其商业用途。
据说互联网上 50%以上的流量都是爬虫创造的,也许你看到很多热门数据都是爬虫所创造的,所以可以说无爬虫就无互联网的繁荣。
前天写了一篇文章《 只因写了一段爬虫,公司200多人被抓!》,讲述程序员因写爬虫而被刑侦的事件。文章传播很广,评论中讨论最热是: 爬虫究竟是合法还是违法的?
这个话题涉及到我们很多程序员的日常工作,所以有必要和大家细聊一下。
01.技术无罪?
在今年国家颁布 《中华人民共和国网络安全法》 之后,很多以前处于灰色地带的业务都不能做了。
君不见之前曾经非常火的各种社工库网站,现在绝大部分都已经消失匿迹了吗?因为最新的安全法强调: 贩卖个人信息超过50条属于“情节严重”,需要追求其法律责任。
很多草根站长都纷纷主动关闭了网站;还有很多涉及版权信息的网站,比如书籍、影视剧、课程等后期也会面临越来越严格的审查,这就是目前大的形势。
2014年12月20日,人人影视字幕站发布微博称,人人影视正式关闭,并表示或将继续为正版商提供翻译服务,也可能转变为讨论社区的形式。
2019年6月,吾爱破解因版权问题关站整改...
.....
随着中国经济的不断往前走,知识产权问题会越来越重视,非法爬虫是现在一个重要的打击部分,
如果有程序员走在灰色的边缘尽早收手,不要因为一点小的收益导致触犯法律,从而得不偿失。
技术是无罪的,但是用到了错的地方代价也是非常巨大的。
02.爬虫岗位人人自危
我在拉钩上搜索: 爬虫工程师,显示有 217 条相关招聘信息,薪资从10-60k 都有,说明市场上对爬虫的需求是很大的。
简单回答一下这些问题:
还有朋友认为这事责任在企业不在程序员,日常工作中项目初期设计和最后上线需要通过公司的法务批准,所有代码必须有其他程序员同事评审通过才能提交。
这位朋友说的挺对的,按道理每个公司都应该有法务和风控在前面,后面才是产品设计和程序员开发的事情,但如果一家公司为了利益,老板可以直接让这两个部门闭嘴,后面程序员可以不干吗?
更甚至很多公司其实就没有这两个部门或者说形同虚设。那么做为程序员自己也需要操一份心,凡是涉及到入侵类的程序都不能干,因为有一个东西叫做: 单位犯罪 。
单位犯罪 ,是指公司、企业、事业单位、机关、团体为单位谋取利益,经单位决策机构或者负责人决定实施的,法律规定应当负刑事责任的危害 社会 的行为。
我国刑法对单位犯罪原则上采取 双罚制度 ,即单位犯罪的,对单位判处罚金,并 对其直接负责的主管人员和其他直接责任人员判处刑罚。
03.什么样的爬虫是非法的?
爬虫不能涉及个人隐私!
如果爬虫程序采集到 公民的姓名、身份证件号码、通信通讯联系方式、住址、账号密码、财产状况、行踪轨迹等个人信息 ,并将之用于非法途径的,则肯定构成非法获取公民个人信息的违法行为。
也就是说你爬虫爬取信息没有问题,但不能涉及到个人的隐私问题,如果涉及了并且通过非法途径收益了,那肯定是违法行为。
另外,还有下列 三种情况 ,爬虫有可能违法,严重的甚至构成犯罪:
现在网上有很多付费的课程,比如极客时间、Gitchat、慕课网、知识星球等等,这些付费内部信息如果被非法爬取手法出售获利,一种违法行为。
之前我就遇到一个网友,把各个知识星球的内容都抓下来,合到一起自己去卖,自作聪明觉得发现了一个大的商机,其实自己不知道这个行为其实很危险,风险和收益明显不对等。
我这两天看的时候,他的一个公众号都被封了,后来又转移了一个小号继续搞,迟早又是被封的命运,真的很不值当。最可怜是那些买他服务的用户,因为他宣传时承诺永久,肯定永久不了。
04.什么样的爬虫是合法的?
1、 遵守 Robots 协议
Robots 协议也叫 robots.txt(统一小写)是一种存放于网站根目录下的 ASCII 编码的文本文件,它通常告诉网络搜索引擎的漫游器(又称网络蜘蛛),此网站中的哪些内容是不应被搜索引擎的漫游器获取的,哪些是可以被漫游器获取的。
Robots 协议就是告诉爬虫,哪些信息是可以爬取,哪些信息不能被爬取,严格按照 Robots 协议 爬取网站相关信息一般不会出现太大问题。
2、不能造成对方服务器瘫痪
但不是说只要遵守 Robots 协议的爬虫就没有问题,还涉及到两个因素,第一不能大规模爬虫导致对方服务器瘫痪,这等于网络攻击。
2019年05月28日国家网信办发布的《数据安全管理办法(征求意见稿)》中,拟通过行政法规的形式,对爬虫的使用进行限制:
网络运营者采取自动化手段访问收集网站数据,不得妨碍网站正常运行;此类行为严重影响网站运行,如自动化访问收集流量超过网站日均流量三分之一,网站要求停止自动化访问收集时,应当停止。
3、不能非法获利
恶意利用爬虫技术抓取数据,攫取不正当竞争的优势,甚至是牟取不法利益的,则可能触犯法律。实践中,非法使用爬虫技术抓取数据而产生的纠纷其实数量并不少,大多是以不正当竞争为由提请诉讼。
举个例子,如果你把大众点评上的所有公开信息都抓取了下来,自己复制了一个一模一样的网站,并且还通过这个网站获取了大量的利润,这样也是有问题的。
一般情况下,爬虫都是为了企业获利的,因此需要爬虫开发者的道德自持和企业经营者的良知才是避免触碰法律底线的根本所在。
05.最后
有风险的行业谨慎进入,比如现金贷、不合规的P2P、赌博类 游戏 、黑五类产品的行业。如果公司安排入侵某个网站数据,或者有同事/朋友邀请泄露公司信息的都需要保持警惕,有时候一个很小的动作都有可能导致出问题。
我们绝大多数公司和个人使用的爬虫都是没有问题的,不必人人自危,只要把握住不要爬取个人信息,不要利用爬虫非法获利,不要爬取网站的付费内容,基本上不会有问题。
程序员是世界上最单纯的一批人,也是一批高智商低情商的人,工作是工作但也需要适当保持谨慎,对于一些游走在法律边缘的事情请保持距离。
敬畏法律,遵纪守法,从我做起。
参考:https://www.zhihu.com/question/291554395
作者: 纯洁的微笑 .出处:www.ityouknow.com
应该是你触发到网站的反爬虫机制了。
解决方法是:1.伪造报文头部user-agent(网上有详细教程不用多说)
2.使用可用代理ip,如果你的代理不可用也会访问不了
3.是否需要帐户登录,使用cookielib模块登录帐户操作
4.如果以上方法还是不行,那么你的ip已被拉入黑名单静止访问了。
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)