Requests+Python-连接数据库获取100个用户并进行登录的脚本

一、分析

1.用第三方操作数据库的pymysql库从数据库取出100条数据

2.requests请求登录操作

二、代码

1.代码

import pymysql
import requests

class LoginBatch():

    """数据库连接信息"""
    def __init__(self):
        self.connect = pymysql.connect(
            host = "192.xxx.x.xx",
            database = "xxxxx",
            user = "xxx",
            password = "xxx"
        )

    """从数据库取100个用户"""
    def get_data(self):
        cursor = self.connect.cursor()
        sql = "select userAccount from t_sys_user where userAccount like 'w0%'; "
        cursor.execute(sql)
        self.result = cursor.fetchall() # 获取到查询的结果
        cursor.close()
        self.connect.commit()
        self.connect.close()
        return self.result 

    """100个用户进行登录操作"""
    def login_100per(self):
        headers = {
            "Origin": "http://192.168.1.9:8080",
            "User-Agent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36"
        }
        url = "http://192.168.1.9:8080/SSOAuth?action=login&code=undefined&gotoURL=http%3A%2F%2F192.168.1.9%3A8080%2Fportal%2Fgeoindex.do"

        for da in self.result: # result 是一个元组,遍历取出da为长度为1的元组
            data = da[0]   # da[0]取出第一个为登录账号(不会写的多写几个print看一下就明白了)
            login_data = {"userAccount": data, "pwd": "b123456"}
            login_data1 = {
                "data": "%s" % login_data
            }
            r = requests.post(url, headers=headers, data=login_data1)
            print(r.json()["msg"]) # 返回的数据是json格式可以直接输出

if __name__ == '__main__':
    lo = LoginBatch()
    lo.get_data()
    lo.login_100per()

2.结果

猜你喜欢

转载自blog.csdn.net/qq_39620483/article/details/86011503