python爬虫

可参考网址
https://www.cxyzjd.com/article/zyzy123321/105708570

请求头与相应头
请求头
host 域名
connection 长连接
upgrade-insecure-requests 升级为HTTPS请求
+user-agent 用户代理
+referer 页面跳转处
+cookie 状态保持(判断用户)
authoration
常见状态码
network中抓包得到的原码才是判断依据
elements中原码是渲染后的原码不可做为判断标准
浏览器请求的过程
浏览器
发送所有请求,进行渲染
爬虫
只发送指定请求 不会渲染

	骨骼文件
		html静态文件
	肌肉文件
		js/ajax请求
	皮肤
		css/font/图片
	抓包过程
		根据发送请求的流程分别在骨骼/肌肉/皮肤响应中查找数据
	https://blog.csdn.net/qq_30553235/article/details/79282113

requests
导入
调用get对目标发送请求

相应对象:text/str/conten/bytes

user-agent/reference/cookie

day2

3发送带请求头的请求

requests.get(url,headers={})

4发送带参数的请求

1.url中直接带参数
2.使用params参数
1.构建参数字典
2.发送请求时设置参数字典

5在headers中携带cookies

和3相同

6使用cookies参数保持会话

构建cookies字典
在请求cookies字典赋值给cookies参数
requests.get(url,cookies)

7超时参数timeout的使用

requests.get(url,timeout=3)

8代理

代理ip是一个ip,指向一个代理服务器
正向/反向代理:
是否知道最终服务器的地址
代理分类
匿名度
透明代理/匿名代理/高匿代理
协议
http/https/socks

使用
request.get(url,proxies=proxies)
代理使用成功无报错
使用失败有报错/挂起

requests发送post请求

1.实现方法
requests.post(url,data)
data是一个字典
#编写爬虫逻辑
#url
#headers
#data字典
#发送请求获取相应
#用json模块数据解析
2.post数据来源
多次抓包判断
1.固定值 : 抓包比较不变值
2.输入值: 抓包比较根据自身变化值
3.预设值-静态文件: 需要提前从静态html中获取
4.预设值-发请求: 需要对指定地址发送请求获取数据
5.在客户端生成的 分析js模拟生成数据

requests.session进行状态保持

作用
自动处理cookie
场景
连续多次请求
使用方法
session = requests.session()
response= session.get(url,heders)
response = session.post(url)

day3

数据提取

响应分类
结构化
json数据
json模块
re模块
jsonpath模块
xml数据
re模块
lxml模块
xml和html的区别
xml传输和存储数据
html展示数据

jsonpath(结果为列表,获取值需要索引
场景
xpath
https://www.w3school.com.cn/xpath/index.asp
节点选择语法html
/html/head/title/ 绝对路径
/html//title 相对路径
//title 相对于整个html文档
//title/. 当前节点
//title/./…/… 父节点
. 当前节点
… 当前节点的父节点
/ 隔开节点
/html/body/div[3]/ 第三个div,绝对路径
/html/body/div[3]/div[last()] 选中最后一个
/html/body/div[3]/div[last()-1] 选中倒数第二个
/html/body/div[3]/div[position()>=10] 区间选择
通过属性修饰节点
//div[@id=“content-left”]/div/@id 出现在[]的@是使用标签属性名和属性值修饰节点,出现在结尾的/@是取属性值
通过子节点值修饰节点
//span[i>200] i是节点值
//div[span[2]>=9.4]
通过包含修饰
//div[contains(@id,“qiushi_tag”)] ("id="里带qiushi_tag的)
// span[contains(text(),“下一页”)] (找span标签里带“下一页”的)

selenium
设置https://www.debugger.wiki/article/html/1578144214461538

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值