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日

悬赏问题

  • ¥500 火焰左右视图、视差(基于双目相机)
  • ¥100 set_link_state
  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号
  • ¥15 基于单片机的靶位控制系统
  • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本