python requests 10041报错_Python-Requests1-批量登录获取uid

需求:从表格取不同的手机号和密码登录,获取不同用户的信息,写入本地表格

requests官网:https://github.com/requests/requests

1、安装Requests模块

1、官网下载requests包

2、解压,命令行进入python目录,运行安装命令

python setup.py install

测试有没有安装成功,如果import没有报错就是安装成功

$cd d:\python

$python

import requests

打开pycharm,导入requests即可

2、request基本使用

get请求

params = {'key1': 'value1', 'key2': 'value2'}

resp_get = requests.get("url_get", params=params) ```

2. POST请求

设置header、cookies、请求参数

headers = {'Accept-Encoding':'gzip,deflate', ' Accept-Language':'zh-cn'}

params = {'key1': 'value1', 'key2': 'value2'}

cookies = dict(Cookies='g0yk_6c66_think_language=zh-Hans-CN; ekdf_4878119f=a7b06c8ee66940ccdf424170c2cc0e10')

resp_post = requests.post(url_post, headers=headers, data=params, cookies=cookies)```

获取响应信息

r = requests.get("url_get", params=params)

r.text # 获取响应内容

r.encoding # 根据http头部返回响应编码

r.status_code # 获取响应状态码

r.headers # 响应头,返回的类型是字典形式,

r.headers['Content-Type'] # http头部大小写不敏感,所以访问响应头字段的时候任意大小写都可以

r.cookies # 获取cookie```

####4. 完成登录接口

//用手机号和密码访问登录接口并返回data;登陆失败则返回0

def userLoginRequest(self,account,password):

requrl = "http://xxx.cn/login.json"

header = {……}

cookies = {……}

params = {'fields':'access_toke}

params['account'] = account #读取手机号

params['password'] = password #读取密码

r = requests.post(requrl,header,cookies,params)

if(str(r.status_code)=='200'): # 请求通过的时候,才提取data

response = json.loads(r.text)

print(response['data'])

if(response['data']):

return response['data']

return 0

自动读取表格的手机号+密码,调用登录接口再提取用户身份id,写入本地表格

coding:utf-8

import xlrd

openPath = u'E:/Automation/appiumCase/xxx/sheet/user.xls'

savePath = u'E:/Automation/appiumCase/xxx/sheet/user2.xls'

excel = xlrd.open_workbook(openPath)

sheet = excel.sheets()[0] # 读取第一个sheet数据

result = ['uid', 'phone', 'password', 'token']

for i in range(1, 200): # 循环次数,取决于表格的数据行数

phone = str(sheet.row_values(i)[1])

password = str(int(sheet.row_values(i)[2]))

resJon = Login().userLoginRequest(phone, password) # 调用登录接口

if (resJon != 0):

result.append(resJon['uid']) # 提取uid

else:

print(str(sheet.row_values(i)[1]) + ' Login error!') # 否则提示登陆失败

ExcelUtil().writeArrayToExcel(result, 3, savePath) # 手机号+密码+uid,写入表格```

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/350429.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

pdf保存如何带批注_带有批注的SpringSelenium测试

pdf保存如何带批注这篇文章描述了如何在Java中实现Selenium测试。 它的灵感来自Alex Collins的帖子,并带有注释。 该代码可在GitHub的Spring-Selenium-Test目录中找到。 一些替代方法和更轻巧的技术可用于对Spring MVC应用程序进行单元测试。 要进行单元测试服务&am…

javax.naming.NamingException: Cannot load JDBC driver class 'com.mysql.jdbc.Driver'

解决办法: Tomcat服务器的根目录下也有一个lib目录,也要把mysql的驱动包放进去转载于:https://www.cnblogs.com/kingdaqi/p/10935916.html

Spring教程:使用Spring框架和Spring Boot创建Hello World REST API

由于Java社区对早期版本的Enterprise Java感到失望,因此创建了Spring Framework 。 从那时起,它已经发展成为一个巨大的生态系统,可以解决构建基于Web的Java应用程序中的所有问题以及更多问题。 经常批评Spring,因为Spring过去常常…

Testner自动化测试平台免费开放啦

swift(雨燕)是目前世界上飞行速度最快的鸟之一,尖尾雨燕平时飞行的时速为170公里,最快可达到325.5公里。恰恰自动化测试的主要目的就是为了提高测试效率,因此,Testner自动化测试平台也叫 swift Testner自动…

seleniumpython定位网页元素方法_使用Selenium对网页元素进行定位的诸种方法

使用Selenium进行自动化操作,首先要做的就是通过webdriver的get()方法打开一个URL链接。在打开链接,完成页面加载之后,就可以通过Selenium提供的接口,在页面上进行各种操作了,下面我们来了解一下如何在查找元素。3.1 查…

有赞全链路压测方案

转载于:https://www.cnblogs.com/wuzhiyi/p/10944934.html

python 消息队列 get是从队首还是队尾取东西_python分布式爬虫中消息队列知识点详解...

当排队等待人数过多的时候,我们需要设置一个等待区防止秩序混乱,同时再有新来的想要排队也可以呆在这个地方。那么在python分布式爬虫中,消息队列就相当于这样的一个区域,爬虫要进入这个区域找寻自己想要的资源,当然这…

mime类型是什么类型_使用多种MIME类型测试REST

mime类型是什么类型1.概述 本文将重点介绍测试具有多种媒体类型/表示形式的RESTful服务。 这是有关使用Spring和基于Java的配置的Spring Security设置安全的RESTful Web服务的系列文章的第十篇。 REST with Spring系列: 第1部分 – 使用Spring 3.1和基于Java的配置…

Go-Mutex互斥量

先来看一段go1.12.5中Mutex的源码: // Copyright 2009 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file.// Package sync provides basic synchronization primiti…

spss方差分析_【案例】SPSS统计分析:多因素方差分析

- 点击上方“中国统计网”订阅我吧!-多因素方差分析,用于研究一个因变量是否受到多个自变量(也称为因素)的影响,它检验多个因素取值水平的不同组合之间,因变量的均值之间是否存在显著的差异。多因素方差分…

你好世界

想打个Hello World,但是又没有继续下去。 今天买茶百道的时候,做茶的女孩子很开朗很友善,在她递给我装好的山竹荔枝的时候我闻到水果的苦味,于是捧住杯子埋头下去闻了一下,她笑着说,“每次我做这个的时候都…

sqlserver免安装_SQL数据分析,如何免安装在线运行?

大家好,在之前写了一篇关于SQL软件安装,读者普遍反映,这个软件有点不好安装,但是,从事数据分析行业,熟练使用SQL软件是必须的,于是乎......本文推送一篇免安装的,可以在线运行的SQL软…

python自动导出数据脚本_利用python生成一个导出数据库的bat脚本文件的方法

# 环境: python3.xdef getExportDbSql(db, index):# 获取导出一个数据库实例的sql语句sql mysqldump -u%s -p%s -h%s -P%d --default-character-setutf8 --databases mu_ins_s%s > %s.s%d.mu_ins_%d.sql %(db[user], db[pwd], db[host], db[port], index, db[server], inde…

java内存模型和内存结构_Java内存模型和优化

java内存模型和内存结构总览 许多多线程代码开发人员都熟悉这样的想法,即不同的线程可以对持有的值有不同的看法,这不是唯一的原因,即如果线程不安全,它可能不会看到更改。 JIT本身可以发挥作用。 为什么不同的线程看到不同的值&…

ANTLR巨型教程

解析器是功能强大的工具,使用ANTLR,您可以编写可用于多种不同语言的各种解析器。 在本完整的教程中,我们将要: 解释基础 :解析器是什么,解析器可以用于什么 了解如何设置要从Javascript,Pyth…

Web进程被kill掉后线程还在运行怎么办?

目录 背景描述原因分析处理方案参考背景描述 系统有一个配置表,系统在启动后会启动一个线程,每隔5分钟将配置表里所有的数据更新到内存中。 系统是通过jenkins构建(直接kill掉Web进程,然后传入新的包再启动)的&#xf…

北京学python 价格怎么样_北京学习Python需要多少钱

Python本身语言具有一定的优势所在,简单易学,就业方向多,也就意外着从事Python的工程师相对于其他编程语言的工程师来说,就业机会更多,薪资待遇更高。1、web网站工程师:我们都知道web是我们一直不能忽视的存…

go Windows Service

相关库 https://godoc.org/golang.org/x/sys/windows/svchttps://github.com/kardianos/servicehttps://github.com/judwhite/go-svchttps://github.com/btcsuite/winsvc参考 云监控Go语言版本插件介绍 - 这个不知道用的什么库实现的Cannot start golang application exe as a …

华为南太无线解决方案部梁旭阳_华为无线充电新专利:激光无线充电,替代传统半接触式...

传统的无线充电技术是用感应线圈通过短距离,实际上是有接触式充电,但是相对于真正的无线充电,还是不够便利,最近,华为新无线充电技术曝光:激光无线充电。虽然无线充电已在近年得到了较大的普及,…

jquery的懒加载记录一下踩得坑

官网下载地址&#xff1a;http://plugins.jquery.com/lazyload/ 要引入两个文件&#xff0c;注意这些事html中包含着 <script src"https://code.jquery.com/jquery-1.11.3.min.js"></script><script src"js/jquery.lazyload.js"></sc…