教你用Python实现全自动刷网课

开通VIP,畅享免费电子书等14项超值服

首页

好书

留言交流

下载APP

联系客服

2022.07.03四川

(双枪)双手会给出答案

阅读前你可能需要:

所以只要分析网页的源代码,就可以实现自动化操作网页。

在模拟操作的过程中,必须提前知道即将发生什么,才能完美的自动化测试。

官网搜索就行

(安装完后在终端自查:输入python,如图则安装完成)

浏览器就不多说了,这里给出Driver的地址

chromedriver.storage.googleapis.com/index.html

(python安装目录script中放入对应版本的driver)

安装前其实要先安装pip,默认安装是有勾选的,而且这里网上有很多方法了,不多赘述。

安装好pip后可以在终端命令行中输入

pipinstallselenium

(安装selenium中)

(自查安装是否完成:pipshowselenium)

在系统中把python的目录添加进去就行,网络上也有很多,不多赘述。

选择你要那啥的平台,这里使用mooc作为演示

获取它的URL

但是由于自动化测试软件打开的浏览器没有cookie,不会识别用户

所以需要设计一下自动登陆的部分

在浏览器中按F12打开调试台再点击这个按钮

这个是元素选择器,选择那个绿色的“登陆/注册”

之后会跳出对应的

(确定元素位置有很多种方式,xpath是相对准确的一种,确定元素位置相当于告诉电脑你该在哪里进行操作)

(演示,gif中复制的是xpath,应该复制fullxpath)

/html/body/div[4]/div[2]/div[1]/div/div/div[1]/div[3]/div[3]/div重复上述操作找到各个按钮的xpath,在代码中添加几个点击的动作

为了方便调试,大多数操作采用try-expcet语句

(但是前期敲代码的时候,建议先不要用try-except语句,因为编译器报错的信息更有用)

mooc网点击登陆后,会弹出新的小页面,由于weddriver每次只能识别一个页面,这里直接.switch_to_frame()

#登陆部分try:driver.find_element(By.XPATH,'/html/body/div[4]/div[2]/div[1]/div/div/div[1]/div[3]/div[3]/div').click()driver.find_element(By.XPATH,'/html/body/div[13]/div[2]/div/div/div/div/div[2]/span').click()print('点击登陆按钮成功\n')except:print('点击登陆按钮时出错')#输入账号密码部分try:driver._switch_to.frame(0)#这里转到fame0因为mooc网站点击登陆后是弹窗的driver.find_element(By.XPATH,'/html/body/div[2]/div[2]/div[2]/form/div/div[1]/div[2]/input').send_keys(account)driver.find_element(By.XPATH,'/html/body/div[2]/div[2]/div[2]/form/div/div[3]/div[2]/input[2]').send_keys(password)print('输入账号密码成功\n')driver.find_element(By.XPATH,'/html/body/div[2]/div[2]/div[2]/form/div/div[8]/a').click()except:print('登陆失败')上述代码中,总体来说,为了便于理解,是这样一个伪代码

driver.查找元素的方法('元素的位置').操作()find_element(By.XPATH,'xpath的内容')就是通过xpath来确定元素位置.click()就是点击的操作,.send_keys(参数)就是输入的操作这一步完成后应该是这样的效果(登陆次数非常多的时候,可能会有滑动验证)

如果上述操作都能够掌握,后面的其实就只是重复步骤而已,教程其实可以到这里就结束了。

如果还想继续看,请往下滑。

接下来是点击头像进入课程界面,选择课程。

注意:这时候webdriver聚焦在刚刚的frame上,先改回主页面,然后点击头像就可以进入“我的课程”界面

try:driver.switch_to.default_content()driver.find_element(By.XPATH,'/html/body/div[4]/div[2]/div[1]/div/div/div[1]/div[3]/div[1]/img').click()print("点击头像成功\n")except:print("点击头像出错")接下来这里用“高等数学(一)”作为演示

继续获取元素的XPATH,重复操作即可

time.sleep(2)#点击高等数学(一)课程try:driver.find_element(By.XPATH,'/html/body/div[4]/div[2]/div[3]/div/div[1]/div[3]/div/div[2]/div/div/div[2]/div[1]/div[2]/div/div[1]/div[1]/div[1]/a/div[1]/img').click()print("点击'高等数学(一)'成功")except:print("点击课程失败")time.sleep(4)#点击继续学习try:driver.switch_to.window(driver.window_handles[-1])driver.find_element(By.XPATH,'/html/body/div[4]/div[2]/div[4]/div[2]/div/div[1]/div/div[1]/div/div[1]/div/a[1]').click()print('点击继续学习成功')except:print("点击继续学习失败")由于mooc网有自动播放功能,但是没有自动看课件的功能,这里演示观看每节课的课件

PS:其他网课网站(智慧树)有一些是没有自动播放的,非常反人类,这时候就可以运用上面的方法实现自动播放。

分析网页源代码发现,一套课程分为chapter和lesson俩个部分

(红蓝箭头一一对应)

在lesson的每一节中都有下面的几个

分析这一行格子的源代码可以发现

在当前的界面中,li标签中的class属性中多了个current

然后各个li标签的fullxpath是有一定规律的

(可以看见后缀是递增的)

上面说了,这里只演示全部看完课件,核心方法掌握了,就可以触类旁通了。

后来发现,classname似乎锁定不到这个元素,只能暴力破解了。(有好方法的请联系我)

一行最多不过10个格子

归纳出来是这样的

/html/body/div[4]/div[2]/...(省略)/ul/li[数字]所以可以通过只改变后面[数字]就行,每次都点击一下,先在全局变量中利用列表存储一下’[数字]’。

#全局变量区域lists=['1','2','3','4','5','6','7','8','9','10',]用for循环遍历列表(其实这里已经可以实现自动播放了,只要设置好第二个tiem.sleep()的参数就行)

foriinlists:time.sleep(2)driver.find_element(By.XPATH,'/html/body/div[4]/div[2]/div[4]/div[2]/div/div[1]/div/div/div[3]/ul/li['+i+']').click()time.sleep(2)这里完成后是这样的。

(鼠标没有移动)

但是我需要多次点击,而且每次点击都是不同的页面,这时候就不得不分析chapter和lesson的源码

经过分析发现,俩者的源码也有一定规律

chapters/html/body/div[4]/div[2]/div[4]/div[2]/div/div[1]/div/div/div[1]/div[1]/div/div[1]/div/div[2]/div[章节数]lessons/html/body/div[4]/div[2]/div[4]/div[2]/div/div[1]/div/div/div[1]/div[1]/div/div[2]/div/div[2]/div[讲数]注意,这里俩个栏的元素是隐藏的。

可以通过js来先显示它

js="document.getElementsByClassName('downf-bgj-list')[0].style.display='block'"driver.execute_script(js)回到python编辑器,可以打上这样的代码(三个for嵌套)

#全局变量区域cha='/html/body/div[4]/div[2]/div[4]/div[2]/div/div[1]/div/div/div[1]/div[1]/div/div[1]/div/div[2]/div'chapters=['1','2','3','4','5','6','7','8','9','10','11','12','13','14']les='/html/body/div[4]/div[2]/div[4]/div[2]/div/div[1]/div/div/div[1]/div[1]/div/div[2]/div/div[2]/div'lessons=['1','2','3','4','5','6',]#疯狂点击#点击chapter后点击lesson然后点击视频和文档forcinchapters:time.sleep(1)js="document.getElementsByClassName('downf-bgj-list')[0].style.display='block'"driver.execute_script(js)driver.find_element(By.XPATH,cha+'['+c+']').click()time.sleep(1)forlinlessons:try:time.sleep(1)js2="document.getElementsByClassName('downf-bgj-list')[1].style.display='block'"driver.execute_script(js2)driver.find_element(By.XPATH,les+'['+l+']').click()time.sleep(1)except:breakforiinlists:try:time.sleep(1)driver.find_element(By.XPATH,'/html/body/div[4]/div[2]/div[4]/div[2]/div/div[1]/div/div/div[3]/ul/li['+i+']').click()time.sleep(1)except:break

THE END
1.python毕设基于web的精品课程网站程序+论文本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。 系统程序文件列表 开题报告内容 一、选题背景 关于基于web的精品课程网站的研究,现有研究主要以传统教育模式下的课程网站构建为主,专门针对精品课程网站,尤其是结合Python技术在Web开发中的应用研究较少。随着互联网教育https://blog.csdn.net/sheji306/article/details/144433833
2.知识付费系统源码轻松拥有专属的在线教育小程序随着移动互联网的发展,在线教育平台已成为教育行业的重要组成部分。知识付费在线教育系统作为一种新兴的教学方式,为教育机构和个人提供了更为便捷高效的途径。本文将探讨如何通过开发一款专属的在线教育小程序,利用知识付费系统源码来优化教学体验,提高学习者参与度,并最终实现商业价值的最大化。 https://blog.51cto.com/u_17185411/12840518
3.知识科普:wepokerplus作弊详细(揭秘操作)自动连接,用户只要开启软件,就会全程后台自动连接程序,无需用户时时盯着软件。 快速稳定,使用这款软件的用户肯定是土豪。安卓定制版和苹果定制版,包一年不闪退! 安全保障,使用这款软件的用户可以非常安心,绝对没有被封的危险存在。 wepokerplus作弊详细这款游戏可以开-挂,确实是有挂的, wepokerplus作弊详细全国https://mip.dvxpzsu.cn/postss/nfHyLzVb.html?wepokerplus%E4%BD%9C%E5%BC%8A%E8%AF%A6%E7%BB%86
4.网课真的离谱!!UP主居然实现自动上网课程序大学生编程程序Python自动答题脚本,自动答题刷课,附源码!期末再也不用担心挂科了!Python入门教程编程爬虫代码安装激活码Python,编程入门,程序员 【Python】黑科技,python制作自动答题脚本!准确率100%! 50行代码写的自动刷网课程序,解放双手去做别的事情 大学生必备OCS网课助手 新版智慧职教云 当程序员遇上网课 (附教程,无需https://xbeibeix.com/video/BV1xE411s7mz
5.刷课程序源码,27网课源码29刷网课平台源码刷课程序源码, 27网课源码-29刷网课平台源码 2024-12-06 网站源码 1 3047 扫一扫,手机访问 限时? 优惠 平台资金担保,交易全程无忧 立即抢购 ¥9.90元 (原价:¥99.00) 开通VIP享更低价格 +- 立即购买 商品特色: 担保交易 自动发货 VIP折扣 品牌: https://www.taohaoyuan.com/product/view6574.html
6.刷课脚本如何快速刷网课① 网课刷无root版密钥怎么使用 网课刷无root版是一款能够帮助用户学习的软件,该软件的最主要功能是帮助用户快速刷课,让用户能够节省更多的时间。用户通过它设置好时间间隔即可开始刷课,让你告别枯燥的网络课程 ② 云课堂刷课会被发现吗 云课堂刷课有可能会被发现,超星、智慧树批量刷课助手简介脚本安装与配置专用浏https://www.ultimate-communications.com/zh/program_6900
7.学习通怎么轻松刷网课学习通轻松刷网课教程(6)点击“加载已解压的扩展程序”,选择你刚才解压的插件文件夹,现在你已经成功安装了“学无止尽”插件。 通过以上方法,你可以大大提高学习通刷网课的效率,让你在有限的时间内学到更多的知识,当然,刷网课只是学习的一种手段,关键还是要真正掌握课程内容,提高自己的能力,希望这些方法能对你有所帮助!https://www.kdun.com/ask/413182.html
8.英华在线网课怎么刷(超星学习通浏览器辅助插件PCv1.1.1免费版油猴刷课怎么操作油猴刷网课有红点的操作如下。首先打开油猴,管理面板。点击设置里面的通用。选择***,点击操作菜单。点击图标徽章信息,选择已禁用。直接在应用商店内下载油猴,打开Chrome浏览器扩展程序页面,拖拽到页面即可完成安装。打开油猴设置初学者或***配置模式。打开网站点击地址栏右侧的油猴图标可以 http://pingguoid.com/appleid/94943.html
9.池馆按本刷课脚本(工具代码)(池馆怎么看答案)1、在百度网页上安卓油猴工具,之后直接在里面搜索GReasyFork。在这里找到合适自己的脚本之后点击安装即可。点击右上角的油猴图标进入管理面板,找到下载的网课脚本进行编辑。 2、油猴刷课怎么 *** 作油猴刷网课有红点的 *** 作如下。首先打开油猴,管理面板。点击设置里面的通用。选择高级,点击 *** 作菜单。点击图标https://www.cqrzr.com/post/105438.html
10.给别人代刷网课属于违法吗?给别人代刷网课属于违法吗? 一键咨询 151***0664用户4分钟前提交了咨询 阿拉善盟用户4分钟前提交了咨询 155***1032用户4分钟前提交了咨询 132***6552用户3分钟前提交了咨询 呼伦贝尔市用户1分钟前提交了咨询 锡林郭勒盟用户3分钟前提交了咨询 通辽用户4分钟前提交了咨询 乌海用户4分钟前提交了咨询 https://mip.64365.com/ask/21218855.aspx
11.学什么编程语言能够做网课刷课,自动答题的脚本?吾爱破解python,我看到很多代刷网课的人都是用python程序刷的 https://www.52pojie.cn/thread-1166927-1-1.html
12.利用Python脚本实现自动刷网课pythonprint("您已经完成时长为{}分钟的阅读!".format(count*5)) count+=1 time.sleep(300) except: time.sleep(2) 这样我们的程序就可以操作浏览器并完成一定时长的学习任务啦~ 总结 以上所述是小编给大家介绍的利用Python脚本实现自动刷网课,希望对大家有所帮助!https://www.jb51.net/article/179378.htm
13.利用Python脚本实现自动刷网课创新互联说到自动化,Selenium这个浏览器自动化测试框架就派上了用场,整个自动刷课的主角便是它。 网站登录 那么为了实现自动刷课,我们需要先实现网站登录,才能在指定的账号内进行操作。常规的,我们需要在对应的位置,找到网页上对应的元素,并通过程序写入。 而这里有个相对麻烦的东西,即验证码,而这个验证码是白底黑字,是简http://chengdu.cdxwcx.cn/article/dejooj.html
14.微信小程序定制开发郑州沃之涛科技有限公司,致力于网站开发、网站优化、网站推广、竞价托管、APP开发、wordpress插件开发、公众号开发、小程序开发等。 我们是从一个打工仔,逐步为自己梦想而走到一起的小团队,我们愿意用我们的服务品质,去决定我们的未来。 我们在成长的道路上需要很多合伙商的朋友来帮助我们走向未来,我们要用过硬的技术https://www.seohnzz.com/page/24/
15.网课,油猴,脚本之前发了一个贴子,本来是想问一下社区hxdm怎么弄刷课脚本来着,虽然之后还是自己弄好了,但是看到帖子来问我怎么刷网课的hxd还蛮多的,所以就打算写一个教程了。 在这里呢重点讲一下Microsoft Edge,Google浏览器和这个差不多在下面也有说。 Microsoft Edge https://api.xiaoheihe.cn/v3/bbs/app/api/web/share?link_id=48056124
16.教你如何在自己电脑上刷网课(学习通)程序员阿鑫大学生要刷学习通里的网课,本人作为的大学生也是特别的烦,不过网上那些代刷网也有给你刷的,但是也是需要几块钱一门的课,而且速度也一般,所以在这里给大家分享一个可以用的油猴脚本,使用是免费使用的,但是答题,题库那些是收费的,不过也便宜,3块钱可以刷1千次题,刷视频是免费的,也调节速度https://www.cxyax.com/?post=615
17.新浪热榜程序员帮学生代刷网课获利60万肇州县局联合市网警分局,成功打掉了一利用黑客手段代刷网课的犯罪团伙。他们利用自主开发编写的刷课程序,以非法盈利为目的,为部分学生代刷网课。民警赴多地展开抓捕,抓获犯罪嫌疑人7人,收缴违法所得60多万。 截止目前,该刷课平台共发展会员5万多人,刷课421万次。目前https://sinanews.sina.cn/native_zt/yingyanlandingpage1658490396
18.pyautogui库来实现定期点击屏幕特定区域的功能(实现网课自由为啥要写这个程序,,原因是我们暑假还要刷网课,,手机软件上面的,就离谱。反正我不想刷,写个脚本,刷好了。这个脚本的功能是定时点击,我写好了,点击位置修改一下,时间修改一下,就可以刷网课了。当然如果你和我一样要刷网课,你可能还需要准备以下一些东西,这个就和我们这篇文章无关了如果你要刷你需要1、一台云服https://cloud.tencent.com/developer/article/2436847
19.程序员帮大学生代刷网课获利60多万会员有5万多人大学里有不少选修课,与专业课程无关,可能比较枯燥,但需要刷完时长才有成绩。于是不少大学生求助于刷网课。 近日,黑龙江大庆。肇州县局联合市公安局网警分局,成功打掉了一利用黑客手段代刷网课的犯罪团伙。 他们利用自主开发编写的刷课程序,以非法盈利为目的,为部分逃避学习的大学生代刷网课。 https://tech.ifeng.com/c/8HrSK9bZF79
20.人生无捷径!程序员帮学生代刷网课获利60万。24小时人生无捷径!程序员帮学生代刷网课获利60万。 近日,黑龙江大庆。肇州县局联合市公安局网警分局,成功打掉了一利用黑客手段代刷网课的犯罪团伙。他们利用自主开发编写的刷课程序,以非法盈利为目的,为部分大学生代刷网课。民警赴多地展开抓捕,共抓获犯罪嫌疑人7人,收缴违法所得60多万元。 截止目前,该刷课平台共发展会员https://www.huxiu.com/moment/234944.html
21.程序员帮学生代刷网课获利60万,共计刷课421万多次鞭牛士 7月22日消息,据钱江晚报报道,近日,黑龙江肇州县局联合市公安局网警分局,成功打掉了一利用黑客手段代刷网课的犯罪团伙。 该犯罪团伙利用自主开发编写的刷课程序,以非法盈利为目的,为部分大学生代刷网课。其搭建专用“刷课”下单平台,对外大量宣传同时发展代理人员,为大学生快速、秒刷网课,并收取费用从中非法赚http://www.bianews.com/news/details?id=131475
22.刷网课平台系统源码蓝铂力源码资源网源码简介: 最新大学生代刷网课系统源码 刷网课平台系统源码 转载未测试,感兴趣的下载研究 安装教程: 1.打开Nginx.htaccess文件,复制其中的内容,并将其设置为伪静态规则,建议使用 PHP 7.3 进行配置。 2.在config文件夹中找到config.phphttps://www.lbbee.com/3180.html
23.利用脚本刷网课利用脚本刷网课,程序员大本营,技术文章内容聚合第一站。https://www.pianshen.com/article/72511445273/