python编写简单爬虫资料汇总


Posted in Python onMarch 22, 2016

爬虫真是一件有意思的事儿啊,之前写过爬虫,用的是urllib2、BeautifulSoup实现简单爬虫,scrapy也有实现过。最近想更好的学习爬虫,那么就尽可能的做记录吧。这篇博客就我今天的一个学习过程写写吧。

一 正则表达式

正则表达式是一个很强大的工具了,众多的语法规则,我在爬虫中常用的有:

. 匹配任意字符(换行符除外)
* 匹配前一个字符0或无限次
? 匹配前一个字符0或1次
.* 贪心算法
.*? 非贪心算法
(.*?) 将匹配到的括号中的结果输出
\d 匹配数字
re.S 使得.可以匹配换行符

常用的方法有:find_all(),search(),sub()

对以上语法方法做以练习,代码见:https://github.com/Ben0825/Crawler/blob/master/re_test.py

二 urllib和urllib2

urllib和urllib2库是学习Python爬虫最基本的库,利用该库,我们可以得到网页的内容,同时,可以结合正则对这些内容提取分析,得到真正想要的结果。

在此将urllib和urllib2结合正则爬取了糗事百科中的作者点赞数内容。

代码见:https://github.com/Ben0825/Crawler/blob/master/qiubai_test.py

三 BeautifulSoup

BeautifulSoup是Python的一个库,最主要的功能是从网页抓取数据,官方介绍是这样的:

Beautiful Soup 提供一些简单的、python 式的函数用来处理导航、搜索、修改分析树等功能。它是一个工具箱,通过解析文档为用户提供需要抓取的数据,因为简单,所以不需要多少代码就可以写出一个完整的应用程序。

Beautiful Soup 自动将输入文档转换为 Unicode 编码,输出文档转换为 utf-8 编码。你不需要考虑编码方式,除非文档没有指定一个编码方式,这时,Beautiful Soup 就不能自动识别编码方式了。然后,你仅仅需要说明一下原始编码方式就可以了。

Beautiful Soup 已成为和 lxml、html6lib 一样出色的 python 解释器,为用户灵活地提供不同的解析策略或强劲的速度。

首先:爬取百度百科Python词条下相关的100个页面,爬取的页面值自己设定。

代码详见:https://github.com/Ben0825/Crawler/tree/master/python_baike_Spider

代码运行:

python编写简单爬虫资料汇总

 python编写简单爬虫资料汇总

巩固篇,依据豆瓣中图书的标签得到一个书单,同样使用BeautifulSoup。

代码详见:https://github.com/Ben0825/Crawler/blob/master/doubanTag.py

运行结果:

python编写简单爬虫资料汇总

 以上就是今天学习的一些内容,爬虫真的很有意思啊,明天继续学scrapy!

Python 相关文章推荐
在 Django/Flask 开发服务器上使用 HTTPS
Jul 03 Python
python计算N天之后日期的方法
Mar 31 Python
Python中的map()函数和reduce()函数的用法
Apr 27 Python
Python实现购物程序思路及代码
Jul 24 Python
Python入门之三角函数sin()函数实例详解
Nov 08 Python
TensorFlow实现模型评估
Sep 07 Python
pyqt5 QProgressBar清空进度条的实例
Jun 21 Python
简单了解Django ORM常用字段类型及参数配置
Jan 07 Python
Pycharm远程连接服务器并实现代码同步上传更新功能
Feb 25 Python
django 获取字段最大值,最新的记录操作
Aug 09 Python
Python排序函数的使用方法详解
Dec 11 Python
Python预测分词的实现
Jun 18 Python
使用Nginx+uWsgi实现Python的Django框架站点动静分离
Mar 21 #Python
Python中的条件判断语句与循环语句用法小结
Mar 21 #Python
举例讲解Python中的迭代器、生成器与列表解析用法
Mar 20 #Python
深入解析Python中函数的参数与作用域
Mar 20 #Python
总结Python编程中函数的使用要点
Mar 20 #Python
两个命令把 Vim 打造成 Python IDE的方法
Mar 20 #Python
Python中列表、字典、元组数据结构的简单学习笔记
Mar 20 #Python
You might like
php通过smtp邮件验证登陆的方法
2016/05/11 PHP
php mysql PDO 查询操作的实例详解
2017/09/23 PHP
CentOS7.0下安装PHP5.6.30服务的教程详解
2018/09/29 PHP
Thinkphp 框架扩展之类库扩展操作详解
2020/04/23 PHP
搭建PhpStorm+PhpStudy开发环境的超详细教程
2020/09/17 PHP
图片自动更新(说明)
2006/10/02 Javascript
jQuery 性能优化指南(2)
2009/05/21 Javascript
javascript Array.prototype.slice使用说明
2010/10/11 Javascript
JS图片无缝滚动(简单利于使用)
2013/06/17 Javascript
Javascript中判断一个值是否为undefined的方法详解
2016/09/28 Javascript
微信小程序模板(template)使用详解
2018/01/31 Javascript
Vuejs开发环境搭建及热更新【推荐】
2018/09/07 Javascript
Vue源码解析之Template转化为AST的实现方法
2018/12/14 Javascript
vue中通过使用$attrs实现组件之间的数据传递功能
2019/09/01 Javascript
使用localStorage替代cookie做本地存储
2019/09/25 Javascript
Python实现字典的key和values的交换
2015/08/04 Python
Numpy中的mask的使用
2018/07/21 Python
python实现两张图片的像素融合
2019/02/23 Python
Python面向对象程序设计类的封装与继承用法示例
2019/04/12 Python
python实现图像检索的三种(直方图/OpenCV/哈希法)
2019/08/08 Python
使用 css3 实现圆形进度条的示例
2017/07/05 HTML / CSS
HTML5实现经典坦克大战坦克乱走还能发出一个子弹
2013/09/02 HTML / CSS
HTML5调用手机发短信和打电话功能
2020/04/29 HTML / CSS
巴西最大的体育用品商城:Netshoes巴西
2016/11/29 全球购物
欧洲有机婴儿食品最大的市场:Organic Baby Food(供美国和加拿大)
2018/03/28 全球购物
德国50岁以上交友网站:Lebensfreunde
2020/03/18 全球购物
香港艺人陈冠希创办的潮流品牌:JUICESTORE
2021/03/04 全球购物
经济与贸易专业应届生求职信
2013/11/19 职场文书
优秀党员获奖感言
2014/02/18 职场文书
园艺师求职信
2014/03/10 职场文书
2015年幼儿园元旦游艺活动策划书
2014/12/09 职场文书
在人间读书笔记
2015/06/30 职场文书
2015年六年级班主任工作总结
2015/10/15 职场文书
导游词之寿县报恩寺
2020/01/19 职场文书
只用50行Python代码爬取网络美女高清图片
2021/06/02 Python
十大冰系宝可梦排名,颜值最高的阿罗拉九尾,第三使用率第一
2022/03/18 日漫