Python requests库模拟浏览器行为的一些技巧记录
如下都是一些经验之谈,不定期更新,喜欢可以关注哦。
忽略ssl报错
一些证书问题会导致程序报错,解决方法为在发送请求的时候,带上verify=False参数即可;
result = requests.get(burp0_url, headers=burp0_headers, verify=False)
为requests设置代理
这个功能其实很实用,有时想用requests模拟浏览器发包,但是结果和浏览器不一样时,那么可以通过设置代理的方式,拦截requests的发包和浏览器的发包,通过对比,你就能知道你和浏览器的发包有什么差别,根据差异来对程序做改进。
proxies = {'http': 'http://localhost:8080', 'https': 'http://localhost:8080'}
result = requests.get(burp0_url, headers=burp0_headers, proxies=proxies, verify=False)
遇到响应为302跳转
requests遇到响应吗为302的时候,它默认都是跳转的(allow_redirects的默认值是True),但是cookie不会像浏览器一样保存,这样就会导致跳转到第二个页面的会出错(因为缺少cookie),解决方法就是加上allow_redirects=False参数,这样就会不会作重定向跳转了。通过一步一步的设置参数就能和浏览器一样了。
requests.get(burp0_url, headers=burp0_headers, cookies=cookie1, allow_redirects=False)
Python requests库模拟浏览器行为的一些技巧记录的更多相关文章
- 【python爬虫】用requests库模拟登陆人人网
说明:以前是selenium登陆取cookie的方法比较复杂,改用这个 """ 用requests库模拟登陆人人网 """ import r ...
- python requests库学习笔记(上)
尊重博客园原创精神,请勿转载! requests库官方使用手册地址:http://www.python-requests.org/en/master/:中文使用手册地址:http://cn.pytho ...
- Python 配置 selenium 模拟浏览器环境,带下载链接
使用浏览器渲染引擎.直接用浏览器在显示网页时解析HTML,应用CSS样式并执行JavaScript的语句. 这方法在爬虫过程中会打开一个浏览器,加载该网页,自动操作浏览器浏览各个网页,顺便把数据抓下来 ...
- Python requests库的使用(一)
requests库官方使用手册地址:http://www.python-requests.org/en/master/:中文使用手册地址:http://cn.python-requests.org/z ...
- Python使用mechanize模拟浏览器
Python使用mechanize模拟浏览器 之前我使用自带的urllib2模拟浏览器去进行訪问网页等操作,非常多站点都会出错误,还会返回乱码.之后使用了 mechanize模拟浏览器,这些情况都没出 ...
- 大概看了一天python request源码。写下python requests库发送 get,post请求大概过程。
python requests库发送请求时,比如get请求,大概过程. 一.发起get请求过程:调用requests.get(url,**kwargs)-->request('get', url ...
- python requests库与json数据处理详解
1. http://docs.python-requests.org/zh_CN/latest/user/quickstart.html get方法将参数放在url里面,安全性不高,但是效率高:pos ...
- Python——Requests库的开发者接口
本文介绍 Python Requests 库的开发者接口,主要内容包括: 目录 一.主要接口 1. requests.request() 2. requests.head().get().post() ...
- 使用python requests库写接口自动化测试--记录学习过程中遇到的坑(1)
一直听说python requests库对于接口自动化测试特别合适,但由于自身代码基础薄弱,一直没有实践: 这次赶上公司项目需要,同事小伙伴们一起学习写接口自动化脚本,听起来特别给力,赶紧实践一把: ...
随机推荐
- 一个扩展搜索API的优化过程
概述 API 是一个服务的门面,就像衣装是人的形象一样. 优雅的 API 设计,能让业务方使用起来倍儿爽,提升开发效率,降低维护成本:糟糕的 API 设计,则让业务方遭心,陷入混沌. 本文将展示一个扩 ...
- java学习笔记之IO编程—File文件操作类
1. File类说明 在Java语言里面提供有对于文件操作系统操作的支持,而这个支持就在java.io.File类中进行了定义,也就是说在整个java.io包里面,File类是唯一一个与文件本身操作( ...
- LeetCode 第四题 Median of Two Sorted Arrays 二人 渣渣选手乱七八糟分析发现基本回到思路1
题目 There are two sorted arrays nums1 and nums2 of size m and n respectively. Find the median of the ...
- SendMessage模拟按键所需的虚拟键码
Virtual-Key Codes The following table shows the symbolic constant names, hexadecimal values, and mou ...
- 菜不成声 的 ac自动机 刷题记录
HDU2222 Keywords Search 模板题.数组开小了结果会T... 代码 #include <bits/stdc++.h> #define nmax 10010 using ...
- Android Q 使用通知栏消息
String myChannelId = "iot"; String myChannelName = "告警通知服务"; NotificationManager ...
- a标签绑定事件
<a href="javascript:void(0);" onclick="js_method()"></a> 这种方法是很多网站最常 ...
- 关于vue :style 的几种使用方式
:style的使用 一 ,最通用的写法 <p :style="{fontFamily:arr.conFontFamily,color:arr.conFontColor,backgrou ...
- ECMAScript基本语法——④变量
简介 变量:一小块存储数据的内存空间先申请了一块内存空间,规定空间的存储类型,给空间赋值3, 想找到这个3可以通过内存空间的地址值,但是通过地址值太麻烦了,给这个空间起了一个名字a 通过这个a可以找到 ...
- 复选框与bitmap算法实践
bitmap(位图)算法 bitmap算法是利用数据二进制的每一位的值来表示数据的算法,可用来压缩保存数据集. 如何保存 如 5(int)的二进制表示为 101b,第一位和第三位的值是1就可以表示数据 ...