V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
xuAN111
V2EX  ›  程序员

我这个爬虫是否违法?

  •  1
     
  •   xuAN111 · 188 天前 · 5738 次点击
    这是一个创建于 188 天前的主题,其中的信息可能已经有所发展或是发生改变。

    各位大佬们,提个问题,我目前开发了一款课表。

    用户只需要授权教务系统账号给我,然后课表爬虫会自动去获取课程信息导入。

    这个数据爬取过程是否违法?


    在知乎找到一个回答,找不到更多了

    以下为知乎回答: 课程表信息只是课程的单纯排列,没有独创性,不属于著作权保护的范围。高校又不是盈利性企业,在教学领域也不存在商业秘密。在民商法领域寻找保护课程信息的依据应该是不成立的。

    至于出借账号密码只是违反了学校教务系统的管理规定,如造成损失可以诉诸侵权法处理。

    第 1 条附言  ·  188 天前
    账号密码服务器不存在,仅保存在客户端本地。
    第 2 条附言  ·  188 天前
    账号密码服务器不存储,仅保存在客户端本地。
    第 3 条附言  ·  187 天前
    刚看了下超级课程表,有个成绩查询功能,也是学生输入就教务系统账号密码,然后自动查询。
    超级课程表在国内大学内算是用户群体最大的一个课表软件了吧。
    46 条回复    2022-12-01 15:27:04 +08:00
    dzdh
        1
    dzdh  
       188 天前
    依稀记得当年的超级课程表
    xuAN111
        2
    xuAN111  
    OP
       188 天前
    @dzdh 对的,但我这个是自动爬取导入,所以来问问。
    jstony
        3
    jstony  
       188 天前
    如果不确定是否涉及侵权,建议你可以考虑改个方式,支持用户拍照导入,把数据录入这个动作交给用户来完成。
    crab
        4
    crab  
       188 天前
    别把系统爬挂,没赚钱正常是没什么问题。
    locoz
        5
    locoz  
       188 天前
    如果你是学校内部人员,并且你的程序不存在留存账号密码做别的事的情况,那就只是单纯的用户自己出借账号违规的问题,跟你关系不大,最多被学校处分而已。
    xuAN111
        6
    xuAN111  
    OP
       188 天前
    @jstony H5 课表,app 准备后期再做。
    chenliang0571
        7
    chenliang0571  
       188 天前
    网站不允许爬,你去爬了就是违法。
    “非法入侵”
    eason1874
        8
    eason1874  
       188 天前   ❤️ 22
    几年前我还认同这个说法,现在我只想说,你法我笑,只要想抓你必判刑

    办案人员:我不要你觉得,我要我觉得
    xuAN111
        9
    xuAN111  
    OP
       188 天前
    wellqq
        10
    wellqq  
       188 天前 via Android
    所以你可以得到学生的账号密码?
    kwh
        11
    kwh  
       188 天前
    @eason1874 言出法随是吧。
    subframe75361
        12
    subframe75361  
       188 天前
    小米的小爱课程表可以参考一下
    Aixiaoa
        13
    Aixiaoa  
       188 天前 via iPhone
    本站有不少课程表案例了。可以搜一下
    mikewang
        14
    mikewang  
       188 天前
    重点在于你的服务是否储存同学教务账号密码,建议了解《中华人民共和国密码法》。
    如果你利用同学的密码干了别的事,或者同学的教务密码是因为你的服务导致泄漏了,那肯定是违法了。
    ALXG
        15
    ALXG  
       188 天前
    你法我笑. 主要看相关人员看到这个事情以后的第一反应. 那些教你用 xxx 法的, 如果你爸或者你爸的好朋友没有相关人员大, 那根本上不了台面, 随便就给你刑事了.
    q409195961
        16
    q409195961  
       188 天前   ❤️ 1
    大学的时候,做公众号,爬学校的正方教务系统,做课程表和成绩查询

    也和楼主一样,用户要输入教务系统的账号密码,然后登录进去爬

    当时也没想到违不违法的事儿。不过我做的是学校官微,问题不大。

    给楼主的建议:

    我记得有些教务系统是可以查询全校各班的课表

    通过自己的账号爬取全校的课表

    然后用户只需录入自己的班级即可查询到课表信息
    cat9life
        17
    cat9life  
       188 天前
    先不管爬不爬,只是需要账号密码这一条就足够了
    buyan3303
        18
    buyan3303  
       188 天前
    你如果只是自己单人 为了方便,在不影响服务器正常运行的情况下,可以个人私下里使用:爬虫的爬取速度可以适当调低一些。另外还不能收费,以及存账号密码。

    但如果只是为了实现自动化的话,何不试着先通过正常的道路:比如先和学校运维人员联系,将这个自动化的脚本,或者爬虫工具,供学校全体师生共同使用,不破坏服务器、不收费、开源。
    xuAN111
        19
    xuAN111  
    OP
       188 天前
    @q409195961
    目前是这么做的,已经有 1.3w 上下日活。

    现在想扩展其他大学,准备换个方式,让学生输入自己账号,从教务导入。
    因为有的学校每个人的课表都不一样,所以全校课表这种方式不管用了。
    hatw
        20
    hatw  
       188 天前
    他们说的算
    8zip
        21
    8zip  
       188 天前 via Android
    会有人把自己密码泄露怪给你,不管是不是真的怪你
    名校行政级别非常高,抓你分分钟
    fbichijing
        22
    fbichijing  
       188 天前
    自用,没问题。因为没人知道,只要控制好爬虫的访问频率,基本没啥问题。

    公开使用,不开源。别人需要承担账号密码泄露的风险。看别人愿不愿意去用了。这个账号密码的重要性如果是相当高的话别人的使用意愿就会大大降低。

    公开使用,开源。别人下载源码在自己的电脑上跑,别人可能会魔改这个爬虫。使用者账号密码泄露的风险因开源原因而大大降低,但爬虫制作者需承担别人改爬虫的风险。你不知道别人改了爬虫之后会去做什么。

    我个人觉得,写这种爬虫,自己用是最保险的了。一小部分懂的人使用问题也不大。公开的话就像走在灰色道上,容易湿鞋。

    最理想的情况下是和系统开发者沟通或合作增加功能。不然如果存在着即便被发现也不会有什么关系的立场,就可以去做这个事情。总体感觉如果不存在上面两种情况,做这个事多半吃力不讨好。

    至于合不合法。robots 的君子协议一直都在。即便没有这个东西,嗯......
    YaakovZiv
        23
    YaakovZiv  
       188 天前
    自动导入数据,这属于无授权数据获取吧,可以考虑加一个手动导入的按钮,用户点的时候,等于授权了操作,是用户自己用自己的账户进行了数据导入。
    我一般是主动找学校要授权许可。或者联系学生找老师要授权许可,一封邮件也算。
    SunsetShimmer
        24
    SunsetShimmer  
       188 天前
    xuAN111
        25
    xuAN111  
    OP
       188 天前
    @YaakovZiv 用户填写教务账号密码,然后点击教务导入,导入课程信息。
    (爬虫访问教务登录 拉去课程信息 导入课表)
    (不存储账号)
    Joker520
        26
    Joker520  
       188 天前
    你说没有存储账号密码,就一定没存储了吗?这个说不清楚呀,如果出了问题的话
    yedanten
        27
    yedanten  
       187 天前 via Android
    别问 ,问就是违法 ,这里是大清,说你有罪就有罪
    dorothyREN
        28
    dorothyREN  
       187 天前
    @Joker520 #26 微信还说不存储用户的聊天记录呢
    rozbo
        29
    rozbo  
       187 天前
    楼上几位说的看起来一点儿问题都没有,但实际上纯属纸上谈兵。让用户授权更是皇帝的新装,是判定的是入侵计算机系统,而不是入侵用户,只要系统没有授权你访问,你就是非法的,而用户授权你访问没有用,用户对系统无所属关系因而不持有授权能力。

    更别说之前已经有判例了。。。
    libook
        30
    libook  
       187 天前   ❤️ 1
    法庭的存在的意义之一就是大多情况下双方都有“合理”说法,律师可以帮忙把行为使用合理合法的方式描述,当双方都有道理的时候,那么就需要辩论来看如何认定、谁更合理。简单来讲就是越是灰色区域越有扯皮的空间,但最终得以法庭判决为准。

    我工作上接触赛博空间三大法律体系比较多,说一下我个人的经验。既然需要登录才能访问的数据,它再简单也不属于公开数据,当然如果学生按照系统要求正常登录把课程表复制下来再公开发布到社交平台上没有问题,问题在于教务系统并未授权除账号所有者以外的人员直接从教务系统中获得数据,限制的不是数据本身,而是数据处理行为。法律规定的数据处理行为分为收集、存储、使用、加工、传输、提供、公开等方面。

    如果理想情况下按照正常合法合规的方式来做的话,就是学校要授权第三方课表服务使用学生的账号来获取课表数据,同时学生也授权第三方课表服务使用学生的账号来获取课表数据,这是数据安全合规的典型案例。

    当然如果你没有服务器,只是个终端应用程序,那么用户如何使用都只是用户个人行为,你可以以免责声明的方式来降低风险(当然使用非公开接口依然会有破坏计算机系统的罪名风险);但如果数据过你的服务器的话,就涉及到了数据的使用、传输等行为,就需要履行数安法规定的义务以及承担相应责任。也就是说法律风险比较大,法庭上扯皮的话优势较小。
    PythonYXY
        31
    PythonYXY  
       187 天前
    除非你预先和教务部打好关系,不然想处分你也是分分钟钟的事
    abc8678
        32
    abc8678  
       187 天前 via Android
    @dzdh 我一直手动录入课表,然后固定在桌面小部件上。登录之后,自己的号就不一定安全了
    ufo5260987423
        33
    ufo5260987423  
       187 天前
    你肯定是违法的,关键看是否愿意执法。
    xxxbin
        34
    xxxbin  
       187 天前
    有个疑问? 反过来,爬虫在客户端,用户自己触发自己提交怎么算?
    huangjinjiang20
        35
    huangjinjiang20  
       187 天前
    我 8 年前的毕业设计就是做这个
    qianxaingmoli
        36
    qianxaingmoli  
       187 天前
    参考 wakeup 课表,程序不参与账号登录,由用户手动登录教务并手动导入 https://www.wakeup.fun/
    baobao1270
        37
    baobao1270  
       187 天前
    只要不被发现就不算违法,只要抓不到你就不算违法
    至于怎么才能不被发现,怎么才能抓不到你,那就各显神通呗
    baobao1270
        38
    baobao1270  
       187 天前
    @mikewang 你才是不了解密码法的,也不了解密码学
    密码法管的不是 password ,密码学也不研究“登陆密码”,而是“如何加密”
    kingjpa
        39
    kingjpa  
       187 天前
    按照我大清律例, 你是否犯法,取决于你现在是什么角色,以及你之后是什么角色,站在哪一边。
    mikewang
        40
    mikewang  
       187 天前
    感谢指出我的问题 @baobao1270

    password 本身不在《密码法》的管辖范围内,但是 password 在系统中是以加密的形式存在的( AES/SM 国密等),属于被加密保护的信息(其他信息在数据库中都有可能明文储存,但是唯独密码基本都是以密文形式出现的);
    另外 password 也可能是加密算法密钥的构成部分,很难说和“密码学”没有关系。
    当然这是我个人的看法,如有不妥之处还请指正:)
    realpg
        41
    realpg  
       187 天前
    什么爬虫都违法
    baobao1270
        42
    baobao1270  
       187 天前   ❤️ 1
    @mikewang

    首先我认同你说的,password 和密码学的确有关系,但是关系并不是直接的而是间接的。
    但是对您说的“建议了解《密码法》”,个人认为不准确。
    第一,密码法适用的对象是使用加密算法的单位,而题主是信息系统的使用者,并不是加密算法使用的主体。
    第二,密码法着重于“将密码等信息加密”,而题主的行为更偏向网络安全法、个人信息保护法规制的范畴。
    第三,密码法的主要法益保护对象是“国家安全”,而网络安全法的法益保护对象是企业、个人信息保护法的法益保护对象是个人,很难说题主的行为涉及到了国家安全,因此您的提法并不准确。
    最后,“唯独密码”加密是不完善的,根据我国规定公民个人信息等也需要加密存储。
    mikewang
        43
    mikewang  
       187 天前
    @baobao1270 受教,感谢!
    xingHI
        44
    xingHI  
       187 天前   ❤️ 1
    判断爬虫行为是否违法;从法律专业角度来看,首先要看爬取行为本身是否合法,然后是对于数据的使用是否合法。这个我在之前的回答里面阐述过。

    首先课程表信息本身,确实不受到著作权法的保护,但不意味着不属于著作权法范畴就可以合法爬取;全校的课程表是以数据库形式存储在学校服务器,通过教务系统向本校师生开放,属非公有,同时学生用户有权查看。
    OP 采用模拟登陆的方式进入系统,且是由用户来输入账号密码导入,虽无免责声明,但属于用户使用行为,只要说明与程序实质一致,用户知情下主动使用,且教务处无声明禁止此方式,则属于合法方式爬取( OP 属于提供技术)。
    对于课程表数据,只要后续的课程表的数据处理在用户的掌握之中,并未进行非法行为(课程表几乎不可以吧,只要你不公开数据),就属于合理使用,并且学生用户本身有权使用。

    最后给出建议:
    1. 可以尝试走正规途径,如果官方认可,兴许能给该程序带了更多变化;
    2. 起草符合法律规定的免责声明,且说明程序运作流程,以明示的方式展现给用户,用户确认再给予使用该功能;
    3. 程序的安全性进行检测,是否有密码、数据泄漏风险等,软件开发者需要尽到注意义务;
    4. 最后其实各大学校这类的软件挺多,只是广告多,使用不便捷,也可看出盈利困难。

    来自 法律+计算机 学生的建议
    cowcomic
        45
    cowcomic  
       186 天前   ❤️ 1
    可以从两个维度来衡量

    数据公开维度:
    首要考虑数据是否是客观意义上的公开数据,还是面对特定人群的。某电商的商品信息就是公开数据(即使是登录才能看也算是公开的,因为并没有对登录后的身份做区别限制,也没有对注册做限制),但商家后台的订单信息就是面对特定人群的。面对特定人群的爬虫行为一定涉及侵权(无论是否商用,哪怕自己只是归档存储也会认定)
    公开数据再考虑对方 robots 协议是如何制定的,这部分的约束性稍微较弱,不遵守并不会一定被认定侵权,所以很多大公司的爬虫的确也不遵守,是有隐患的(如果有很明显的商用,那就会惹麻烦,只要不商用,通常会被睁一只眼闭一只眼)

    系统影响维度:
    这个就简单了,就看爬虫会不会影响目标站点的正常运行,只要有比较大的影响,不管在数据公开维度是否有问题都会被认定侵权。以前采过一个地方网站,采集内容都是公开的信息,但是没控制好并发,把这个网站采挂了,那该负责任负责任,没啥说的
    Joker520
        46
    Joker520  
       181 天前
    @dorothyREN 这你也信嘛!!
    关于   ·   帮助文档   ·   博客   ·   nftychat   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   4994 人在线   最高记录 5634   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 62ms · UTC 03:22 · PVG 11:22 · LAX 20:22 · JFK 23:22
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.