0


爬虫入门01

1. 请求头中最常见的一些重要内容

  1. User-Agent : 请求载体的身份标识(⽤啥发送的请求)
  2. Referer: 防盗链(这次请求是从哪个⻚⾯来的? 反爬会⽤到)
  3. cookie: 本地字符串数据信息(⽤户登录信息, 反爬的token)

2. 响应头中一些重要内容

  1. cookie: 本地字符串数据信息(⽤户登录信息, 反爬的token)
  2. 各种神奇的莫名其妙的字符串(这个需要经验了, ⼀般都是token 字样, 防⽌各种攻击和反爬)

数据解析的四种方式

  1. re解析
  2. bs4解析(beautifulsoup)
  3. xpath解析
  4. pyquery解析 这四种方式可以混合使用,完全以结果做导向,只要能拿到想要的数据。

正则表达式

  1. 元字符:具有固定含义的特殊符号,常用元字符 - . 匹配除换⾏符以外的任意字符, 未来在python的re模块 中是⼀个坑.- \w 匹配字⺟或数字或下划线- \s 匹配任意的空⽩符 \d 匹配数字- \n 匹配⼀个换⾏符- \t 匹配⼀个制表符- ^ 匹配字符串的开始- $ 匹配字符串的结尾- \W 匹配⾮字⺟或数字或下划线- \D 匹配⾮数字- \S 匹配⾮空⽩符- a|b 匹配字符a或字符b- () 匹配括号内的表达式,也表示⼀个组- […] 匹配字符组中的字符- [^…] 匹配除了字符组中字符的所有字符
  2. 量词:控制前面的元字符出现的次数 - 重复零次或更多次- - 重复⼀次或更多次- ? 重复零次或⼀次- {n} 重复n次- {n,} 重复n次或更多次- {n,m} 重复n到m次
  3. 贪婪匹配和惰性匹配 - .* 贪婪匹配, 尽可能多的去匹配结果- .*? 惰性匹配, 尽可能少的去匹配结果 -> 回溯 这两个要着重的说⼀下. 因为我们写爬⾍⽤的最多的就是这个惰性匹 配.

正则预加载

  1. 提前编写好正则对象
import re

# 提前把正则对象加载完毕
obj = re.compile(r"\d+")# 直接把加载好的正则进行使用
ret = obj.finditer("abc123def456qqq789")for item in ret:print(item.group())

分组提取数据

# 分组提取
a ="""
<div class='⻄游记'><span id='10010'>中国联通</span></div>
<div class='⻄游记'><span id='10086'>中国移动</span></div>
"""
obj = re.compile(r"<span id='(?P<id>\d+)'>(?P<name>.*?)</span>")
ret = obj.finditer(a)for item in ret:print(item.group("id"), item.group("name"))

python中如何让"."匹配换行符、re.S

obj = re.compile(r'<div class="item">.*?<span class="title">(?P<name>.*?)</span>', re.S)

app逆向四个阶段

  1. 快速了解app逆向到底干的什么
  2. java基础
  3. 安卓开发
  4. 逆向+案例

安卓设备

  1. 真机
  2. 模拟器
# win: 逍遥、夜神、雷电、网易mumu
# max: 网页mum
win安装时需要开启vt。
  1. 安装网页mumu模拟器后,先开启root权限
标签: 爬虫

本文转载自: https://blog.csdn.net/weixin_42289273/article/details/132511657
版权归原作者 专职 所有, 如有侵权,请联系我们删除。

“爬虫入门01”的评论:

还没有评论