详细实例:用python爬虫爬取幽默笑话网站!(建议收藏)
前言:
今天为大家带来的内容是详细实例:用python爬虫爬取幽默笑话网站!(建议收藏),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下!
爬取网站为:http://xiaohua.zol.com.cn/youmo/
查看网页机构,爬取笑话内容时存在如下问题:
1、每页需要进入“查看更多”链接下面网页进行进一步爬取内容每页查看更多链接内容比较多,多任务进行,这里采用线程池的方式,可以有效地控制系统中并发线程的数量。避免当系统中包含有大量的并发线程时,导致系统性能下降,甚至导致 Python 解释器崩溃,引入线程池,花费时间更少,更效率。
- 创建线程 池threadpool.ThreadPool()
- 创建需要线程池处理的任务即threadpool.makeRequests(),makeRequests存放的是要开启多线程的函数,以及函数相关参数和回调函数,其中回调函数可以不写(默认是无)
- 将创建的多个任务put到线程池中,threadpool.putRequest()
- 等到所有任务处理完毕theadpool.pool()
2、查看链接笑话页内容,div元素内部文本分布比较混乱。有的分布在<p>链接内有的属于div的文本,可采用正则表达式的方式解决。
注意2种获取元素节点的方式:
1)lxml获取节点字符串
2)正则表达式写法1,过滤回车、制表符和p标签
3)正则表达式写法2,过滤回车、制表符和p标签
3、完整代码
index.py
runscrapy.py
运行如下:
总共1988个文件,下载完成。
以上就是本文的全部内容,希望对大家的学习有所帮助。
python程序员交流群:877562786(群里含大量学习资料,面试宝典等)
详细实例:用python爬虫爬取幽默笑话网站!(建议收藏)相关推荐
- python搞笑教程_python爬虫- 爬取幽默笑话网站,带你一起笑翻天
importrequestsimportthreadpoolimporttimeimportos,sysimportrefrom lxml importetreefrom lxml.html impo ...
- python爬虫自学网站_python爬虫学习 爬取幽默笑话网站
这篇文章主要介绍了python爬虫爬取幽默笑话网站,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 爬取网站为:http://xiaohua.zol. ...
- 【教程+实例】Python爬虫实例——用Python爬虫爬取bangumi上的galgame资讯
文章目录 0.前言 1.什么是爬虫? 2.什么东西可以爬? 3.简易爬虫示例 4.如何筛选数据? 5.正则表达式 6.最终代码 如何修改代码,以适应自己的需求 效果截图 7.彩蛋 本人与知乎用户间宫羽 ...
- python爬网站数据实例-利用Python爬虫爬取NBA数据功能实例分享
Python实现爬虫爬取NBA数据功能示例 本文实例讲述了Python实现爬虫爬取NBA数据功能.分享给大家供大家参考,具体如下: 爬取的网站为:stat-nba.com,这里爬取的是NBA2016- ...
- Python爬虫爬取伯乐在线网站信息
一.环境搭建 1.创建环境 执行pip install scrapy安装scrapy 使用scrapy startproject ArticleSpider创建scrapy项目 使用pycharm导入 ...
- Python爬虫爬取美剧网站
一直有爱看美剧的习惯,一方面锻炼一下英语听力,一方面打发一下时间.之前是能在视频网站上面在线看的,可是自从广电总局的限制令之后,进口的美剧英剧等貌似就不在像以前一样同步更新了. 但是,作为一个宅dia ...
- Python爬虫爬取古诗文网站项目分享
作为一个靠python自学入门的菜鸟,想和大家分享自己写的第一个也是目前为止唯一一个爬虫代码 写爬虫要具备的能力基础:python入门基础,html5基础知识,然后这边用的是scrapy框架,所以还要 ...
- python 爬取百度知道,Python 爬虫爬取百度百科网站
利用python写一个爬虫,爬取百度百科的某一个词条下面的全部链接和每一个链接内部的词条主题和摘要.利用request库爬取页面,然后利用BeautifulSoup对爬取到的页面提取url和关键内容. ...
- python爬虫爬取腾讯网站——实时疫情数据并生成Excel表格
一.基本介绍: 开发背景:自从2020年新冠疫情发生后,至今为止的相关疫情数据新闻已经是非常的巨大了,我们无时不在在用数据尝试帮助我们解剖全球的疫情状况.由此可见,新冠疫情数据的新闻报道数量与国内疫情 ...
最新文章
- 从hello server开始,到hello client结束
- assume用法及意思_分享assume 的几种用法~
- 江西理工大学c语言程序设计竞赛怎么备考,2015年江西理工大学C语言程序设计竞赛(高级组)...
- Python爬虫大杀器之Requests快速入门
- $(document).ready(function(){}), $().ready(function(){}) 和 $(function(){}) 三个区别...
- nginx静态代理设置一:静态文件在本机
- Dreamweaver简单网页——HTML+CSS小米官网首页的设计与实现
- S3C2440 GPIO控制器
- UI交互设计教程全套视频合集:轻松玩转photoshop抠图
- The process has been signaled with signal '5'. 解决办法
- 从“棱镜门”事件看数据安全如何保护
- 理解镜像、容器和存储驱动
- css中字母数字自动换行
- 新型和增强的Guardium离群值检测
- 吉哥系列故事——恨7不成妻(多返回值的数位DP)
- GUC-10 线程八锁
- Symbian模拟器启动一会自动消失
- 图像处理--视频分析方法
- python英文聊天机器人(亲测可用)
- 硬盘2.5寸4tb服务器硬盘,西部数据My Passport 2.5英寸4TB移动硬盘
热门文章
- 鼠标位置的获取pageX,pageY,screenX,screenY,clientX,和clientY,offsetX ,offsetY,layerX,layerY的使用 和 区别
- Ubuntu中玩转Android模拟器
- 「一個人」的狀態,總是最糟的。
- 小程序分享到朋友圈图片绘制 Painter
- COCI2014silueta
- 041组件传值与状态管理绑定的实现方式
- java计算机毕业设计家政服务系统源码+mysql数据库+系统+lw文档+部署
- 织梦 wordpress_谁拥有WordPress,以及WordPress如何赚钱?
- [转帖]音响及DarBee
- 香港主机上传文件慢怎么办?