python爬虫学习总结

网络爬虫的入门学习

本总结基于b站学传送门

爬虫基本的几个模块
python爬虫学习总结_第1张图片

requests库

python爬虫学习总结_第2张图片

发送request请求
url:要下载的目标网页的url
params:字典形式,设置url后面的参数,比如?id=123&name=xiaoming
data:字典或者字符串,一般用于POST方法提交数据
header:设置user-agent、refer等请求头,来假装是一个真实的用户在进行访问网页
timeout:超时时间,单位是秒
verify:True/False,是否进行HTTPs证书验证,默认是,需要自己设置证书地址
allow_redirects:True/False是否让requests做重定向处理,默认是
cookies:附带本地的cookies数据
接收response响应
r=requests.get/post(url)
//查看状态码,如果等于20o代表请求成功
r.status_code
//可以查看当前编码,以及变更编码 
//(重要!requests会根据Headers推测编码,推测不到则设置为ISo-8859-1可能导致乱码)
r.encoding
//查看返回的网页内容
r.text
/查看返回的HTTP的headers
r.headers
//查看实际访问的URL
r.url
//以字节的方式返回内容,比如用于下载图片
r.content
//服务端要写入本地的cookies数据
r.cookies

URL管理器

对爬取url进行管理,防止重复和循环爬取,支持新增url和取出url

HTML简介

对于爬虫来说,简要了解即可,重点在于实践。

HTML是用来描述网页的一种语言。HTML指的是超文本标记语言(Hyper Text Markup Language)
HTML使用标记标签来描述网页

HTML标签由尖括号包围的关键词,比如,并且他一般是成对存在的,比如

例如:
百度
节点名称:a
节点属性:href='baidu.html'
节点属性:class='article_link'
节点内容:百度

网页解析器-Beautiful Soup

python第三方库,用于从HTML中提取数据。
官网

安装:pip install beautifulsoup4
使用:import bs4

获取一个HTML网页
创建beautifulsoup对象
搜索节点find_all、find——按节点名称、按节点属性值、按节点文字
访问节点名称、属性、文字

语法

创建一个beautifulsoup对象:

from bs4 import BeautifulSoup
# 根据HTML网页字符串创建BeautifulSoup对象
soup = BeautifulSoup(
    html_doc	#HTML文档字符串
    'html.parser',	#HTML解析器
    from_encoding='utf8'	#HTML文档的编码
)

搜索节点(find_all,find)

# 方法:find_all(name,attrs,string) 名称,属性,文本

# 查找所有标签为a的节点
soup.find_all('a')

# 查找所有标签为a,链接符合/view/123.html形式的节点
soup.find_all('a', href='/view/123.html')

#查找所有标签为div,class为abc,文字为Python的节点
soup.find_all('div', class_='abc', string='Python')

访问节点信息

# 得到节点:Python

# 获取查找得到的节点的标签名称
node.name

# 获取查找到的a节点的href属性
node['href']

# 获取查找到的a节点的链接文字
node.get_text()

你可能感兴趣的:(python,爬虫,学习)