Python

2017-04-04  本文已影响0人  HenryBarthes

Day 6

换换口味

爬虫

URl 自动抓取互联网数据 url 相互指向形成一个互联网 

使用Python 设立主题从互联网上从一个网页出发提取所有相关数据

爬虫需要

运行流程

爬虫调度端:启动爬虫,停止爬虫,监视爬虫运行情况

URL管理器:对将要爬取的和已经爬取过的URL进行管理;可取出带爬取的URL,将其传送给“网页下载器”

网页下载器:将URL指定的网页下载,存储成一个字符串,在传送给“网页解析器”

网页解析器:解析网页可解析出①有价值的数据②另一方面,每个网页都包含有指向其他网页的URL,解析出来后可补充进“URL管理器”

管理器是为了防止重复抓取

网页下载器把网页下载到本地 然后进行后续的分析处理

urllib2 是内置插件

下载网页的方法

视频是Python 2.7 的 要换成eclipse运行

第二种方法

下载网页

三种方法的代码

结构化解析  是把网页转化成一个

转化成一个树 w3cschool的要求

通过这个树document

把HTML下面的元素  元素下面的文档 取出来

这样可以通过树的方式访问每一个位置 进行网页解析

安装beautifulsoup4 

安装完成

运行结果完美

find_all 会搜素所有满足要求的节点

find 只会搜素第一个满足要求的节点

然后

然后可以按照节点进行搜索

进行检索 创建bs4 对象然后 加载bs模块 根据HTML文档 创建bs对象

传入三个参数 字符串 解析器 编码防止与代码的编码不一样

find-all 的参数 包含三个 name节点的名称 attrs 节点的属性 string 节点的文字

比如我要查找a的节点 直接传入a的名称即可,....

通过名称属性 文字就可以搜索所有节点

访问节点信息

node.name 获取节点名称

node[] 通过字典的形式访问到所有属性

node.get_text()的方法来获取节点的文字

创建bs对象 搜索dom树 访问节点内容 实现对网页的解析访问

一个for循环

只获取一个lacie 的链接

正则表达式用来查找相应文件

有问题!!!

实战

爬行 标题和简介

明天继续
上一篇下一篇

猜你喜欢

热点阅读