java中的接口是类吗
333
2022-09-06
python爬虫篇:为了追个漫画我居然用上爬虫,别人说我不讲武德
目录
1.前言2.采集目标3.工具准备4.效果展示5.项目思路解析6.简易源码分享7.总结
1.前言
大家好,我是辣条,只能看不能吃的辣条~
最近在追xx动漫,但是没看几章你们懂的,就弹出来一个让我成为尊贵的氪金客户,不然就没法接着往下看了,于是乎我就开始琢磨出来了这个玩意,重点来了,看看就可以了,我的目的是让你们学到技术可不是钻空子哈,毕竟这个是的真的刑啊,懂的都懂~
再次重申:当前文章只限于技术分享,严禁用作其他用途!!!!
2.采集目标
XX漫客
3.工具准备
开发工具:pycharm
开发环境:python3.7, Windows10
使用工具包:requests、csv
4.效果展示
5.项目思路解析
爬虫基本四个步骤:
获取到目标资源地址
发送网络请求,获取数据
发送请求,爬虫有个核心的技巧,他更多的是在模仿客户端发送网络请求,Python请求库用的比较多的是requests,想要用框架scrapy比较合适,在发送请求时带上请求头,将爬虫伪装成浏览器
提取数据
目前我们获取的数据是json数据,可以直接将数据转成字典的数据类型通过键值对进行数据的提取就行
保存数据
数据保存我们直接保存到当前的文件夹,单独的一个章节保存成一个单独的文件(或者各位看官可以自己考虑)
当前文章只限于技术分享,严禁用作其他用途!!!!
6.简易源码分享
import requestsimport jsonimport timeimport osheaders = { 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.69 Safari/537.36'}def parse(url): print(url) res = requests.get(url, headers=headers).json() print(res) chapter_name = res['data']['current_chapter']['chapter_name'] chapter_img_url = res['data']['current_chapter']['chapter_img_list'] print(chapter_name, chapter_img_url) path = '斗破苍穹/' + chapter_name if not os.path.exists(path): os.mkdir(path) download(chapter_img_url, path) # 每次下载漫画时,需要传入相关的参数def download(img_url_list, path): i = 0 for img_url in img_url_list: res = requests.get(img_url, headers=headers) print(res.content) filename = path + "/" + str(i) + '.jpg' with open(filename, 'wb') as f: f.write(res.content) i += 1 print(f'正在下载:{path}第{str(i)}张') time.sleep(0.5)if __name__ == '__main__': for i in range(1, 20): url = ' parse(url)
7.总结
再次重申重点在看知识点,不要去乱尝试,我可不想看你们从入门到“坐牢”
其次详细版源码可以看底下我的个人小卡片,还有我之前的30个游戏的源码包,还有python学习路线等等都可以有的~
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
评论列表
queshi