webspider

requests.get(url, params = None, **kwargs)

url: 拟获取页面的url链接
params: url中的额外参数,字典或字节流格式,可选
**kwargs: 12个控制访问的参数
get源码
get源码

import requests
r = requests.get("http://www.biadu.com")
# print(r.status_code)
r.encoding = "utf-8"
print(r.text)

如果r.tatus_code返回值(状态码)是200,证明申请成功,404(或者不是200的其他数字)都是返回失败。r是一个类,类的名字是responce
在这里插入图片描述
r.content,比如是一个图片,图片资源是用二进制形式储存的,我们就可以用r.contecent来还原在这里插入图片描述在这里插入图片描述

r.encoding
//'ISO-8859-1'
r.apparent_encoding
//'utf-8'
r.encoding = 'utf-8'
r.text
//这样就可以解析出里面的中文字,

如果网站对自己的编码有要求,会把编码信息放进header的charset字段,但不是所有网页都会把编码写进header,如果没有在header中找到charset字段,encoding会default = ISO-8859-1,但是apparent-encoding 可以根据内容检测编码

request的异常处理

request支持六种常用的链接异常在这里插入图片描述
判断返回status是否是200(raise_for_status)

import request
def getHTMLText(url):
	try:
		r = requests.get(url,timeout = 30)
		r.raise_for_status()
		r.encoding = r.apparent_encoding
		return r.text
	except:
		return "error"
if __name__ == "__main__":
	url = "http://www.baidu.com"
	print(getHTMLText(url))

HTTP协议

HTTP, Hypertext Transfer Protocol 超文本传输协议
HTTP是一个基于“请求与响应”模式的、无状态的应用层协议
无状态:第一次请求与第二次请求之间没有相关的关联
HTTP协议采用URL作为定位网络资源的标识
URL是internet 路径(跟文件路径比较像)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
patch打补丁,put重新写

head()的使用方法

在这里插入图片描述

post()的使用方法

在这里插入图片描述

request参数调用方法

在这里插入图片描述
在这里插入图片描述
jason是一个数据格式在这里插入图片描述
在这里插入图片描述

一些高级功能在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
亚马逊爬虫实例,通过更改header file模拟是从火狐浏览器进入的亚马逊页面
在这里插入图片描述

图片爬取代码

在这里插入图片描述

beautiful soup基本元素

解析html的库
标签的基本格式
在这里插入图片描述
beautiful soup会讲标签树类型变为beautiful soup类,对应html的全部内容

不同的解析器(主要是html解析器)的
beautiful soup的基本元素

遍历的三种方法

html的基本形式(树形结构)
三种遍历方式
在这里插入图片描述
标签树的下行遍历

具体代码在这里插入图片描述
标签树的上行遍历
在这里插入图片描述
具体代码

在这里插入图片描述
标签树的平行标签(只能遍历有同一parent的节点,也就是sibling)
在这里插入图片描述
具体代码
在这里插入图片描述

beautiful soup的格式化和编码

prettify的方法(可以自动个html格式增加换行符)在这里插入图片描述
同样可以优化一个标签
在这里插入图片描述

信息标记的三种方法

在这里插入图片描述
XML
在这里插入图片描述
json 有数据类型的键值对
在这里插入图片描述
嵌套模式在这里插入图片描述
YAML(无类型的键值对,用缩进表示从属关系,和python类似,-表示并列关系,|表示整块数据,#表示注释)(——
在这里插入图片描述
在这里插入图片描述

信息提取的方法

第一种方法
在这里插入图片描述
第二种方法(直接搜索关键词)
在这里插入图片描述
融合的方法
在这里插入图片描述
实例代码(找html中所包含的所有连接内容)
在这里插入图片描述
find all 方法(名字参数)在这里插入图片描述
具体代码
在这里插入图片描述
在这里插入图片描述
正则表达式库(以b开头的所有name)在这里插入图片描述
属性参数
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值