python爬取喜马拉雅FM雪中悍刀行整本有声小说!下次教你们爬付费!
前言
本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理。
开发工具
- python 3.6.5
- pycharm
import requests import re
相关模块可pip安装
确定网页目标
有个白狐儿脸,佩双刀绣冬春雷,要做那天下第一。湖底有白发老魁爱吃荤。缺门牙老仆背剑匣。山上有个骑青牛的年轻师叔祖,不敢下山。有个骑熊猫扛向日葵不太冷的少女杀手。 这个江湖,高人出行要注重出尘装扮,女侠行走江湖要注意培养人气,宗派要跟庙堂打好关系。 而主角,则潇洒带刀,把江湖捅了一个通透…
模拟浏览器请求网页
- 获取网页数据
import requests headers = { 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36' } url = 'https://www.ximalaya.com/youshengshu/2684034/p1/' response = requests.get(url=url, headers=headers)
解析网页数据
- 获取章节名字、ID
import re lis = re.findall('<a title="(.*?)" href="(.*?)">', response.text, re.S)[4:-1] for i in lis: title = i[0] num_id = i[1].split('/')[-1] mp3_url = 'https://www.ximalaya.com/revision/play/v1/audio?id={}&ptype=1'.format(num_id)
保存音频文件
def download(url, title): filename = 'D:\\python\\demo\\喜马拉雅\\FM\\' + title + '.mp3' response = requests.get(url=url, headers=headers) with open(filename, mode='wb') as f: f.write(response.content)
你学会了吗?完整项目代码获取点这