使用python实现一个简单爬虫一

简单的爬虫架构

爬虫调度端-url管理器-网页下载器-网页解析器-价值数据

url管理器需要实现的需求

1.添加新的URL到待爬取的集合中(判断待添加URL是否在容器中)
2.获取待爬取url(判断是否存在待爬取url,将待爬取url添加到已爬取url中)

url管理器实现方式

python内存 :待爬取url集合:set()
						已爬取url集合:set()
关系数据库:mysql urls(url,is_crawled)

网页下载器实现功能

通过url将网页html下载到本地(本地文件或内存字符串)

网页下载器种类

一.urllib2
二.requests

urllib2下载网页方法1:

	##方式一:
	import urllib
	#直接请求
	response = urllib.urlopen('http://www.baidu.com')
	#获取状态码
	print (response.getcode())
	#读取内容
	con=response.read()
##方式二:
import urllib
##创建Request对象
request=urllib.Request(url)
##添加数据
request.add_data('a','1')
##添加http的header
request.add_header('User-Agent','Mozilla/5.0')
##发送请求获取结果
response= urllib.urlopen(request)
##方式三:
import urllib, cookielib
##创建cookie容器
cj=cookielib.CookieJar()
##创建1个opener
opener=urllib.build_opener(urllib.HttpCookieProcessor(cj))
##给urllib2安装opener
urllib.install_opener(opener)
## 使用带有cookie的urllib2访问网页
response = urllib2.urlopen("http://www.baidu.com")

网页解析器:从网络提取有价值的工具

python自带:1.正则表达式  2.html.parser
第三方网页解析器:1.Beautiful Soup  2.Ixml
安装BeautifulSoup教程:
		1.打开cmd
		2.##进入Python下Scripts文件夹
		cd C:\Users\TOP\AppData\Local\Programs\Python\Python37\scripts 
		3.##安装
		pip install beautifulsoup4

Beautiful Soup语法

1.创建BeautifulSoup对象

from bs4 import BeautifulSoup
##根据HTML网页字符串创建BeautifulSoup对象
soup=BeautifulSoup(
					html_doc ##html文档字符串
					'html.parser' ##html解析器
					from_encoding='utf8'
					)
## 方法find_all,find(name:节点名称 ,attrs:节点属性,find:节点文字)
find_all(name,attrs,string)

2.访问节点信息

## 获取查到节点的标签名称
node.name
## 获取查到的节点的href属性
node['href']
## 获取查找到的a节点的链接文字
node.get_text()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值