当我学会了Python之后,某文库所有文档轻松下载,确定不来薅羊毛吗?

前言

大家好~😊
本账号也发了很多关于python相关的案例教程文章, 这里很感谢各位粉丝一直以来的关注, 这里也单独为各位粉丝开设一个特别专栏!

🧡 关注
🧡 点赞
🧡 收藏
🧡 评论

评论留下你需求, 下一期的文章内容, 由你来定!

今天就教大家如何实现 某Bai文库内容获取

💥需求如下:

对于这类的文档, 我们想要点击下载, 都是需要 氪金 才行, 但是作为咱们这类人来说, 能白嫖就白嫖!

💥找数据源:

通过开发者工具抓包, 可以看到数据都是图片的形式存在, 那我们可以获取它所有的数据内容, 然后保存下载下来, 以PPT的形式保存

在这里插入图片描述

💥代码如下:

# 导入数据请求模块
import requests
# 导入ppt模块
from pptx import Presentation
# 导入ppt模块 设置边距
from pptx.util import Cm
# 导入文件操作模块
import os

# 请求链接
url = 'https://.com/ndocview/readerinfo'
# 请求参数
data = {
    'docId': '5330607f541810a6f524ccbff121dd36a32dc482',
    'clientType': '1',
    'powerId': '2',
    'pn': '1',
    'rn': '100',
    'bizName': 'mainPc',
    'edtDocSrc': '0',
    'bdQuery': '百度文库',
    'wkQuery': 'python编程ppt',
}
# 伪装
headers = {
    # 用户代理
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/104.0.0.0 Safari/537.36',
}
# 发送请求
response = requests.get(url=url, params=data, headers=headers)
# 循环次数
page = 1
# for 循环遍历
for index in response.json()['data']['htmlUrls']:
    # 获取图片数据
    img_content = requests.get(url=index, headers=headers).content
    # 保存数据
    with open('img\\' + str(page) + '.jpg', mode='wb') as f:
        # 写入数据
        f.write(img_content)
    print(index)
    # 每次循环+1
    page += 1


# 实例化对象
prs = Presentation()
# 使用第7个模块
blank_slide_layout = prs.slide_layouts[6]
# 读取文件
files = os.listdir('img\\')
# 遍历文件名
for file in files:
    # 文件路径
    filename = f'img\\{file}'
    # 添加图片
    # slide.shapes.add_picture(图片路径, 距离左边,距离顶端, 宽度,高度)
    slide = prs.slides.add_slide(blank_slide_layout)
    slide.shapes.add_picture(filename, Cm(0), Cm(0), Cm(25.40), Cm(19.06))

# 保存ppt
prs.save('python编程.pptx')

💥采集效果:

在这里插入图片描述

💥总结:

今天的分享就到这结束了,下期大家想看什么,可以在评论区留下你想看的内容名字,随机抽取幸运观众 ,有什么不明白的地方也可以留言。

  • 6
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值