waisa2010 2021-06-27 00:53 采纳率: 57.1%
浏览 18
已结题

PYthon模拟登录为什么验证老是输入错误

import requests
import json
import urllib
from lxml import etree
import subprocess
import re
import threading
import time
import os
from openpyxl import workbook
from openpyxl  import load_workbook
import time
import base64
import json
import requests
timestamp=time.time()#获当前时间的时间戳

headers={
'Host': 'www.faxuanyun.com',
'Connection': 'keep-alive',
'Host': 'www.faxuanyun.com',
'Connection': 'keep-alive',
'Cache-Control': 'max-age=0',
'Upgrade-Insecure-Requests': '1',
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.69 Safari/537.36',
'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/,signed-exchange;v=b3;q=0.9',
'Referer': 'http://www.faxuanyun.com/rg.html',
'Accept-Encoding': 'gzip, deflate',
'Accept-Language': 'zh-CN,zh;q=0.9',
}

url='http://www.faxuanyun.com'

page_text = requests.get(url=url,headers=headers).text
tree = etree.HTML(page_text)
link = tree.xpath("//p/img[@id='login_validateImg']/@src")
# print(link)
for site in link:
    print(site)

import time
t = int(time.time())
yanurl='http://www.faxuanyun.com'+site
print(yanurl)
#links='http://www.faxuanyun.com/service/gc.html?timestamp=%s'%(t)+'000'
urllib.request.urlretrieve(yanurl , filename='C:/Users/wangweiwei/Desktop/xuexi/image/1.jpg')
def base64_api(uname, pwd, img, typeid):
    with open(img, 'rb') as f:
        base64_data = base64.b64encode(f.read())
        b64 = base64_data.decode()
    data = {"username": uname, "password": pwd, "typeid": typeid, "image": b64}
    result = json.loads(requests.post("http://api.ttshitu.com/predict", json=data).text)
    if result['success']:
        return result["data"]["result"]
    else:
        return result["message"]
    return ""


if __name__ == "__main__":
    img_path = "C:/Users/wangweiwei/Desktop/xuexi/image/1.jpg"
    result = base64_api(uname='******', pwd='******', img=img_path, typeid=3)
    print(result)
code=result
phone='******'
mima='xz123456'
# code1=result
denglu_url='http://www.faxuanyun.com/bss/service/userService!doUserLogin.do?userAccount=%s&userPassword=%s&code=%s'%(phone,mima,code)
# denglu_url='http://www.faxuanyun.com/bss/service/userService!doUserLogin.do?userAccount=********&userPassword=*********&code=code=%s&rid=a66b77220566d72569da0d843ceee221&key=287'(code)

request = requests.post(url=denglu_url)
print(request)
content=request.content.decode()
print(content)
 

  • 写回答

1条回答 默认 最新

  • Feng-licong 2021-06-29 03:25
    关注

    是不是因为你post请求没有传入data参数。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 12月6日
  • 已采纳回答 11月28日

悬赏问题

  • ¥50 安装华大九天aether
  • ¥30 关于#算法#的问题:运用EViews第九版本进行一系列计量经济学的时间数列数据回归分析预测问题 求各位帮我解答一下
  • ¥15 setInterval 页面闪烁,怎么解决
  • ¥15 如何让企业微信机器人实现消息汇总整合
  • ¥50 关于#ui#的问题:做yolov8的ui界面出现的问题
  • ¥15 如何用Python爬取各高校教师公开的教育和工作经历
  • ¥15 TLE9879QXA40 电机驱动
  • ¥20 对于工程问题的非线性数学模型进行线性化
  • ¥15 Mirare PLUS 进行密钥认证?(详解)
  • ¥15 物体双站RCS和其组成阵列后的双站RCS关系验证