简单爬虫学习

简单爬虫

项目流程:
1、确定爬取目标;入口地址,页面元素的审查元素地址,是否完整,(不完整就需要拼接)
2、分析爬取目标:url格式;数据格式;网页编码;
3、编写代码;
4、运行代码;

爬虫的架构:

1、爬虫调度器;
2、url管理器;
3、网页解析器;
4、网页下载器;

爬虫调度器:

url管理器:

功能:实现url的新增,查找,删除,更新这些功能。
实现方式:
1、set():将待爬取和已爬取的url存放在python内存分配集合中。
2、mysql:关系数据库
3、redis:缓存数据库

网页解析器:

1、正则表达式;模糊匹配一个字符串(网页)中的内容;直观,不过,不适用于复杂页面;
2、html.parser:内置模块,结构化解析
3、beautifulsoup:第三方插件库;结构化解析【用于提取html和xml中的数据:https://www.crummy.com/software/BeautifulSoup/bs4/doc/】
4、lxml:结构化解析
结构化解析:
在这里插入图片描述
a、创建beautifulsoup对象;
b、搜索节点find、find_all树;【节点,属性,内容】
c、访问节点内容;【节点,属性,内容】

网页下载器:

功能:下载需要url网页存储到本地文件或字符串。
实现方式:
1、urllib2:python基础模块 urllib2->urlopen
2、requests:第三方模块。模拟浏览器参数,传输给requests。再用urllib2->urlopen。
3、特殊情景处理器:
备注说明:urllib库在python2与python3中的区别
Urllib是python提供的一个用于操作url的模块。在python2中,有urllib库和urllib2库。在python3中,urllib2合并到urllib库中,我们爬取网页的时候,经常用到这个库。升级合并后,模块中包的位置变化的地方较多。以下是python2与python3中常用的关于urllib库的变化:
【python2】urllib2.bulid_opener :【python3】urllib.request.bulid_opener
【python2】cookielib.CookieJa :【python3】http.CookieJar
【python2】urllib2.Request :【python3】urllib.request.Request

输出管理:

1、新建文件;
2、写入爬取数据信息;
3、关闭文件;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值