python 爬取樊登读书官网试听课视频链接

最近在学习上手python,开发群里有个需求是老板看上了樊登读书的视频,想爬取一下视频组织培训用,我看到后正好可以练练手就尝试写了个脚本,代码很简单,一个方法。


思路

1,分析网址,发现每一本书链接都是http://dushu.fandengds.com/news/+数字.html
比如:http://dushu.fandengds.com/news/643.html
然后查看源代码发现视频html标签都是
<source src="http://v.fandeng123.com/video/trial/52af227c93c0e50e5017f1c8015f67c6_a2c214.mp4" type="video/mp4">
综上可知,代码思路很清晰了,就是简单的循环数字请求每一本书的连接我代码是0-900,可以自行定义多少,然后通过解析html视频标签source 得到视频连接最后把链接写到表格保存到本地

爬取用到的python库:
requests 请求网络库
xlwt 读写excel 库
BeautifulSoup 解析html库
库的安装和使用详解可自行百度
##上代码

import random

import requests
import xlwt
from bs4 import BeautifulSoup


def fandeng(index):
    headers = {
        'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9',
        'Accept-Encoding': 'gzip, deflate',
        'Accept-Language': 'zh-CN,zh;q=0.9',
        'Connection': 'keep-alive',
        'User-Agent': 'Mozilla/5.0 (Windows3 NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.105 Safari/537.36'}
    timeout = random.choice(range(80, 180))#生产请求延时随机数,模拟网页请求
    rs = requests.get("http://dushu.fandengds.com/news/" + index + ".html", headers=headers, timeout=timeout)
    rs.encoding = 'utf-8'
    return rs.text


if __name__ == '__main__':
    wbk = xlwt.Workbook() #exclel 对象
    sheet = wbk.add_sheet('第一页')
    a = 0
    for value in range(0, 900):
        # print(value)
        html = fandeng(str(value))
        soup = BeautifulSoup(html, 'html.parser')
        title = soup.title.string
        titleList = soup.find_all('source')#得到的是 <source src="http://v.fandeng123.com/video/trial/fb6d1c1260740d3961f1df00a7b8d6bf_6d265e.mp4" type="video/mp4">
        for link in titleList:#循环可以不要因为确定只有一个视频链接
            a = a + 1
            url = link.get('src')#得到的是视频连接 http://v.fandeng123.com/video/trial/fb6d1c1260740d3961f1df00a7b8d6bf_6d265e.mp4" type="video/mp4
            sheet.write(a, 1, url)  # 几行1列是视频连接
            sheet.write(a, 0, title)  # 几行0是书名
            print(str(a))
    wbk.save('樊登读书.xls')#保存成excle

#效果截图
樊登读书试听视频

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值