精通python网络爬虫学习笔记(1)
第一章
爬虫的组成: 控制节点,爬虫节点,资源库
网络爬虫中可以有多个控制节点,多个爬虫节点,控制节点之间可以互相通信,控制节点和其下的爬虫节点之间也可以互相通信,同一控制节点其下的爬虫节点之间也可以互相通信。
控制节点主要负责:
根据url地址分配线程,调用爬虫
爬虫节点负责:
具体的爬取工作
爬行后,爬行结果存储到资源库。
第三章
开始进入Python学习 python版本:3.6.2
import urllib.request #引入模块
file = urllib.request.urlopen("http://bbs.pinggu.org/thread-1384391-1-1.html")#读取url
data = file.read()
print(data) #打开
filename = ur.urlretrieve("http://bbs.pinggu.org/thread-1384391-1-1.html",filename = "E:\\2.html") # 读取并保存
urllib.request方法 | 作用 |
---|---|
.urlcleanup() | 清除缓存 |
.getcode() | 得到状态码 |
.geturl | 得到url |
.quote | 编码 |
.unquote | 解码 |
如果遇到403错误的解决办法
输入一个网址 – f12 – network- headers – 复制user-agent
import urllib.request
url = "http://bbs.pinggu.org/thread-1384391-1-1.html"
req = urllib.request.Request(url)
header = ("Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.62 Safari/537.36")
req.add_header("User-agent",header) #添加user header
data = urllib.request.urlopen(url).read()
网络超时设置
.urlopen(url,timeout = )