Cookie&form

三元运算符

if 条件成立,if前面的结果赋值给to,否则else后面的内容赋值给to

to = "en" if lan=="zh" else "zh"

requests进行携带cookie登录

  • cookie字符串放在headers中
  • 把cookie字典交给requests请求方法的cookies

字典推导式

In [8]: {i:i+10 for i in range(10)}
Out[8]: {0: 10, 1: 11, 2: 12, 3: 13, 4: 14, 5: 15, 6: 16, 7: 17, 8: 18, 9: 19}

In [9]: {i:i+10 for i in range(10) if i%2==0}
Out[9]: {0: 10, 2: 12, 4: 14, 6: 16, 8: 18}

寻找登录接口的方法

  • form表单action对应的url地址

    • 用户名和密码的input标签中,name的值作为键,用户名和密码作为值的字典,作为post data
  • 通过抓包,定位url地址

    • form data

分析js,获取加密的数据

  • 观察变化

  • 定位js

    • 通过event listener定位js的位置
    • 通过搜索url地址中的关键字,通过chrome的search all file来进行搜索
  • 进行分析

    • 通过添加断点的方式分析js
  • 执行js

    • 完全的使用python模拟js的执行过程

requests处理ssl证书

requests.get(url,verify=False)

获取响应中的cookie,转化为字典

response = requests.get(url,headers=headers)
requests.utils.dict_from_cookiejar(response.cookies)

超时参数的使用

requests.get(url,timeout=3)

retrying模块的使用

  • from retrying import retry
  • 通过装饰器的方式使用retry,进行异常捕获,重新执行被装饰的函数

数据的分类

  • 结构化数据

    • json,xml
    • 直接使用模块转化为python类型
  • 非结构化数据

    • html
    • re,xpath

json模块的使用

json.loads:json字符串转化为python类型
json.dumps : python类型转化为json字符串

json.load: 包含json字符串的类文件对象转化为python类型
json.dump: 把p需求:爬取苏宁易购所有下所有图书和图书分类信息
,以

那么对于为什么需要模拟登陆?
获取cookie,能够爬取登陆后的页面

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值