本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理
以下文章来源于腾讯云 作者:用户7678152
操作环境
- 编译器:pycharm社区版
- python 版本:anaconda python3.7.4
- 浏览器选择:Google浏览器
- 需要用到的第三方模块:requests , lxml , selenium , time , bs4,os
网页分析
明确目标
提取漫画地址
选定了对象之后,就应该想办法来搞到漫画的地址了
右击检查元素,粗略看一遍网页的源代码,这时我发现里面有很多连续的
提取漫画章节地址
提取漫画图片
编写代码
导入需要的模块
提取漫画的内容页
内容页的提取也很简单,就像上面的分析一样,使用简单的xpath语法即可提取
提取章节名
刚刚我们输出的是漫画页的地址字段,但是通过这些字段并不能请求到信息,还需在前面加上域名才可以构成一个完整的网址
提取章节名是为了在漫画名的文件夹下再为每个章节创建一个文件夹保存漫画图片
获取漫画源网页代码
这个部分的代码是这个代码的核心部分,也是花费时间最久的部分
首先我们知道通过正常的方式没有办法请求到所有的图片地址信息,若是使用抓包方法会变得非常难分析,所以我采用的是模拟浏览器滑动的方法来获得图片的地址信息
为了方便看到结果,先将webdriver设置为有界面模式,等到实现想要的功能之后,再将它隐藏起来
运行之后会自动打开漫画的内容页,并拖动右侧的滑动条(模拟了手动操作,缓慢拖动是为了让图片充分加载),其中的sleep方法和网速有一定的关系,网速好的可以适当减少延时的时间,网速差可适当延长
在写拖动滑动条的代码时,我尝试了非常多种拖动写法,也模拟了按下方向键的操作,可是只有这一种方法使用成功了。我认为失败的原因可能是刚打开界面的时候会有一个导航条挡住滑块,导致无法定位到滑块的坐标(因为我用其他网页测试的时候都是可以拖动的)
下载漫画图片
当我们保存完网页的源代码之后,接下来的操作就变得简单了 我们要做的就是提取文件内容,将图片下载到本地
下载结果
到了这里代码就写完了,来看一下运行结果:
完整代码
以上就是本篇文章【Python爬虫---爬取腾讯动漫全站漫画,从此看漫画不再费钱】的全部内容了,欢迎阅览 ! 文章地址:https://sicmodule.kub2b.com/quote/7921.html
栏目首页
相关文章
动态
同类文章
热门文章
网站地图
返回首页 企库往资讯移动站https://sicmodule.kub2b.com/mobile/,查看更多