码迷,mamicode.com
首页 > 其他好文 > 详细

requests模块的一些总结

时间:2019-03-17 14:06:07      阅读:213      评论:0      收藏:0      [点我收藏+]

标签:htm   修改编码   password   value   方式   gen   pen   根据   www.   

一.cookie模拟登录的三种方式

#!/usr/bin/env python
# -*- coding: utf-8 -*-
#author tom

import  requests
post_url=http://www.renren.com/ajaxLogin/login?1=1&uniqueTimestamp=20192012211
post_data={"email":"302624476@qq.com","password":"xxx"}
headers={"User-Agent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.109 Safari/537.36"}
session=requests.session()
#使用session发送post请求,cookie保存在其中
session.post(url=post_url,data=post_data,headers=headers)

#在session请求登录之后才能获取的网址
r=session.get("http://www.renren.com/323264874/profile",headers=headers)

with open(renren.html,w,encoding=utf-8) as f:
    f.write(r.content.decode())



# request模拟登陆的三种方式:
#方式一:
# 先实例化一个session对象,用session先发起一个post请求,session就保存了cookie,再用session发起登录后的请求

#方式二
#浏览器挡登陆后拿到cookie
# 在headers中添加cookie的键值对

# 方式三
#在请求方法中添加cookies参数,接收字典形式的cookies
# 字典形式的cookie中的键是cookie中name对应的值,值是cookie中value对应的之
#和方式二有点类似,就是拿到cookie,改造成字典,然后在请求时候设置cookies参数

 

二.requests编码问题

  1.response.text

  • 类型:str
  • 解码方式:根据HTTP头部对应的编码做出有根据的推测,推测文本的编码内容
  • 如何修改编码方式:response.encoding="指定的编码方式"

  2.response.content

  • 类型:bytes
  • 解码类型:没有指定
  • 如何修改编码方式:response.content.deocode("编码方式")

注意:更建议使用第二种,原汁原味,过早的预处理不是好结果

requests模块的一些总结

标签:htm   修改编码   password   value   方式   gen   pen   根据   www.   

原文地址:https://www.cnblogs.com/tjp40922/p/10546283.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!