Python + Selenium 爬取网易云课堂课时标题及时长

Python + Selenium 爬取网易云课堂课时标题及时长

转载请注明出处:https://blog.csdn.net/jpch89/article/details/84142555



软件安装


目标页面

https://study.163.com/course/introduction.htm?courseId=1006078212#/courseDetail?tab=1

  • 一开始用常规方法请求下来,发现源码中根本找不到任何课时信息,说明该网页用 JavaScript 来动态加载内容。
  • 使用开发者工具分析一下,发现浏览器请求了如下的地址获取课时详情信息:
    https://study.163.com/dwr/call/plaincall/PlanNewBean.getPlanCourseDetail.dwr?1542346982156
  • 在预览界面可以看到各课时信息的 Unicode 编码。
    在这里插入图片描述
  • 尝试直接请求上述地址,显然会报错,不想去研究请求头具体应该传哪些参数了,直接上 Selenium,反正就爬一个页面,对性能没什么要求。

代码

说明

  • study163seleniumff.py主运行文件
  • helper.py 是辅助模块,与主运行文件同目录
  • geckodriver.exe 需要放在 ../drivers/ 这个相对路径下

study163seleniumff.py

from selenium.webdriver import Firefox
from selenium.webdriver.firefox.options import Options
from lxml import etree
import csv
from helper import Chapter, Lesson

# 请求数据
url = 'https://study.163.com/course/introduction.htm?courseId=1006078212#/courseDetail?tab=1'

options = Options()
options.add_argument(
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值