二战漫画爬虫(爱漫画网)

本文介绍了如何使用Python爬虫技术重战爱漫画网,详细解析了爬取斗破苍穹漫画的过程,包括解决动态加载、Base64编码和图片伪装等挑战。通过分析网页源码,找到并解析关键JS方法,获取所有章节和图片URL,最终实现高效下载漫画图片。
摘要由CSDN通过智能技术生成

申明:这篇博文纯属用来技术分享,如他人利用博文内容来获取商业利益均与本人无关!

之前刚入门爬虫的时候,为了练手去爬了爱漫画网,那时候被它虐的不要不要的,后面搞了几天,东西是能爬到了,但是速度实在太慢了,就放弃了。 这两天一时兴起,又去二战了爱漫画网。结果圆满成功!代码我已经上传到github,地址:https://github.com/ant-chow/ComicCrawl.git 。话不多说,先分享一下成果^-^

先说一下环境,我是用的python,也没用什么爬虫框架,就用了urllib2来请求,beautifulsoup用来解析,这两个包相信大家都会用,不多说。

大体思路:指定一部漫画->直接请求获取所有章节url->对所有章节遍历,获取该章节的所有图片地址(需要想办法)->直接请求图片地址获取图片->保存图片到本地

单纯的讲概念可能有点抽象,我就拿爱漫画首页推的“斗破苍穹”这部漫画来当例子讲一下爬取方法吧:

首先爱漫画网如果你只是单纯的请求的话,能请求到内容,但是只能请求到一些没用的页面内容,它页面的有关漫画的内容如漫画图片等等都是进过封装的。例如你直接请求斗破苍穹的首页:http://www.iimanhua.com/imanhua/doupocang/ 可以请求到所有内容(这为我们后面爬漫画减少了难度,因为可以直接请求到所有的章节对应的url)。但是请求任意一个章节的页面如http://www.iimanhua.com/imanhua/9773/370695.html:时,麻烦就来了,这个章节有多少页直接请求不到,因为页数是用js动态加载的;请求不到多少页,就不能保证请求到所有图片,因为一页只有一张图片。而且就算知道有多少页的话,一页一页的去请求来获取图片的url,然后还要去请求图片的url来获取图片,这样很耗时。

一步一步来,先请求斗破苍穹首页:

basic_url = u'http://www.iimanhua.com/imanhua/doupocang/'

# 控制请求次数,超过3次就放弃请求
retry_count = 0
while retry_count < 3:
    tr
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值