<10>

海贼王已经10年了,一路陪伴了我们的点点滴滴。它热血,激情,感人,欢乐,吸引了无数男女老少的紧紧跟随。

说起来还真有点小心酸,原谅博主也是个海贼迷,心中怀揣着很大的梦想,誓死也要成为海贼王的男人。

但如今梦想已经破灭了,因为博主有了女朋友...

什么?说我是假粉丝,我上去就给你一巴掌!点击返回看看本篇的封面!!

没错,别怀疑,那是博主画的。

博主库爱画画,素描,水彩,国画都学过点,当然这个是在wacom绘画板上,利用corel painter + photoshop完成的(题外话)。

最后的最后,博主会放几张之前画的作品,献丑了。

好了,收!

说说我们的正题,前面两篇爬虫学习介绍了正则和BeautifulSoup的内容,这里其实是想借着这个机会给大家分享一下正则和BeautifulSoup解析的实战例子。

目标实现比较简单,就是下载xxx网站上海贼王动漫的套图。爬取效果如下:

(截取了部分下载过程)

(部分下载图片)

采取了多线程爬取,总共一千多张,都存在本地了。

功能分析

本篇目的是使用正则+BeautifulSoup,因此后面不更多赘述了。

提取系列链接

通过开发者工具看到,所有的系列都是同一级别的节点,那么我们首先应该做的是遍历所有页码,然后提取每页各个系列的链接。

接下来看看链接在哪。

小提示:红框内第一个是鼠标自动跟随,第二个是手机/PC切换,使用起来非常方便。

具体点开其中一个系列标签一看,我们要的链接正是标签下的href属性,但是你会发现有两个一模一样的href属性,链接也一样,而我们只需要一个,这就需要小处理一下了,提供两个思路:使用BeautifulSoup方法单独提炼出一个链接

两个链接都提炼出来,放进set集合中去重

这里博主用的第一种方法。

提取图片链接

同样的过程,图片的链接在

标签下的子节点的src属性里,依然使用BeautifulSoup就可轻松解决。

但是这里的网页排版有个问题,就是有的系列中多组图在一页中,而有的系列每页只有一张图,需要翻页查看。

解决方法是不管有没有翻页,都直接遍历该系列下的所有页,通过返回的状态码来判断下一步动作。

好了,解析的任务的分析差不多完成了,下面看看具体代码如何实现的。

代码实现

下载系列链接:

下载图片链接:

下载并储存图片到本地:

多线程队列任务:

注:爬取间隔可以适当再长点,减轻目标服务器的负担,也理解一下辛苦的运维工作人员。

代码比较简单,目的是在实战中掌握正则和BeautifulSoup解析方法,欢迎大家指点和讨论。

完整代码已上传到Github,请参考:https://github.com/xiaoyusmd/Onepiece_crawl_master

更多作品展示

python海贼王_Python爬虫之一个海贼迷的呐喊相关推荐

  1. python绘画海贼王_Python爬虫实战之(三)| 一个海贼迷的呐喊

    作者:xiaoyu 微信公众号:Python数据科学 知乎:Python数据分析师 <10> 海贼王已经10年了,一路陪伴了我们的点点滴滴.它热血,激情,感人,欢乐,吸引了无数男女老少的紧 ...

  2. 智联招聘python岗位_Python爬虫爬取智联招聘职位信息

    import urllib2 import re import xlwt '''遇到不懂的问题?Python学习交流群:821460695满足你的需求,资料都已经上传群文件,可以自行下载!''' cl ...

  3. python代码_python爬虫19 | 遇到需要的登录的网站怎么办?用这3招轻松搞定!

    你好 由于你是游客 无法查看本文 请你登录再进 谢谢合作 当你在爬某些网站的时候 需要你登录才可以获取数据 咋整? 莫慌 小帅b把这几招传授给你 让你以后从容应对 那么 接下来就是 学习 python ...

  4. 爬虫python区别_Python爬虫-04:贴吧爬虫以及GET和POST的区别

    1. URL的组成 汉字通过URL encode(UTF-8)编码出来的编码,里面的字符全是打字节 如果你复制粘贴下来这个网址,出来的不是汉字,而是编码后的字节 https://www.baidu.c ...

  5. 爬虫python入门_python爬虫入门教程有哪些?适合的只有这三个

    python爬虫是现在包括以后一种很重要的获取数据的方式. 当然,也因为网络爬虫本身也很有趣,所以很多人了解过一次爬虫后,就产生了浓厚的兴趣. 但是,想学python爬虫的话,应该看什么python爬 ...

  6. python异常处理_Python爬虫入门(5):URLError异常处理

    大家好,本节在这里主要说的是URLError还有HTTPError,以及对它们的一些处理. 1.URLError 首先解释下URLError可能产生的原因: 网络无连接,即本机无法上网 连接不到特定的 ...

  7. python喜马拉雅_Python爬虫实战案例:取喜马拉雅音频数据详解!

    前言 喜马拉雅是专业的音频分享平台,汇集了有声小说,有声读物,有声书,FM电台,儿童睡前故事,相声小品,鬼故事等数亿条音频,我最喜欢听民间故事和德云社相声集,你呢? 今天带大家爬取喜马拉雅音频数据,一 ...

  8. 爬虫爬取python词汇_Python爬虫入门案例:获取百词斩已学单词列表

    百词斩是一款很不错的单词记忆APP,在学习过程中,它会记录你所学的每个单词及你答错的次数,通过此列表可以很方便地找到自己在记忆哪些单词时总是反复出错记不住.我们来用Python来爬取这些信息,同时学习 ...

  9. python 喜马拉雅_Python爬虫:喜马拉雅FM

    Python爬虫:喜马拉雅FM 编程派微信号:codingpy 自己喜欢在上班的途中听点有声书,所以经常在喜马拉雅上找资源,要找到一个好听的节目不容易,虽然在喜马拉雅官网上可以按分类来看,但是却不能按 ...

最新文章

  1. 汇集82万开发者,拿下7项世界冠军的科大讯飞有何魅力?
  2. 基于Transformer对透明物体进行分割
  3. 英文 电气与计算机工程学报,ei来源刊分为哪三大类?如何区别compendex和ei page one的文章?...
  4. 如何使用Proxy模式及Java内建的动态代理机制
  5. HistCite 的使用方法
  6. LWIP之TCP协议
  7. 2008年.Net编程人员工具参照
  8. 腾讯宣布捐赠1亿元驰援河南;苹果回应iPhone 安全隐患;贝索斯完成10分钟太空之旅|极客头条...
  9. C# 给枚举类型增加一个描述特性
  10. [AHK]AutoHotKey 快速下单脚本,支持东方财富,大智慧,通达信,同花顺
  11. HeadFirst设计模式学习笔记
  12. [竞品分析] 猿辅导-K12在线教育产品
  13. 0302、DNS服务器、多区域的DNS服务器、DNS主从架构、DNS主从数据同步、特殊解析、缓存DNS
  14. R之相关性的显著性检验
  15. 无法加入域,隶属于域,工作组选项为灰色
  16. 【ARM学习笔记】ARM Cortex -A7 EPIT定时器
  17. python做淘宝_用python做个淘宝双十一满减攻略,再也不用算算算了
  18. 2022年第五届中青杯数学建模-时间序列预测模型及基于多特征条件下的决策优化
  19. js实现抽奖滚动效果
  20. java的Stream流

热门文章

  1. 参考 | ffmpeg 修改多音轨视频的默认音轨
  2. Excel如何批量将工作表复制到多个工作簿内
  3. 基于OpenDaylight的二次开发一步一个脚印(一)GIT源代码
  4. 2021最新整理Java多种实战书籍,微服务+分布式+高并发
  5. Catia 加强板全工序DL图设计视频教程 Autoform R7工艺分析
  6. 智慧幼儿园信息管理系统的设计与实现
  7. 凭什么李宇春张靓颖就不能写世界杯?
  8. 中国超级电容器行业发展现状及趋势分析,市场规模持续扩大「图」
  9. android开发之仿QQ拖拽界面效果(侧滑面板)
  10. Golang基本数据结构