Heart灬欣 发表于 2020-8-9 11:40

python使用request模拟登陆之后不知道怎么获取后面内容

本帖最后由 Heart灬欣 于 2020-8-9 14:58 编辑

header1 = {
            "Content-Type": "text/html;charset=GBK",
            "Vary": "Accept-Encoding"
}
url = "http://ea.swmu.edu.cn/jsxsd/"
requests.session().get(url=url, headers=header1, timeout=1000)
cookies = requests.session().cookies.get_dict()# 获得临时的cookies
cookies = str(cookies).replace("{", '').replace("'", '').replace(":", '=').replace('}', '').replace(",", ";")
cookies = cookies.replace(" ", '')


header = {
            "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;"
                      "q=0.8,application/signed-exchange;v=b3",
            "Accept-Encoding": "gzip, deflate",
            "Accept-Language": "zh-CN,zh;q=0.9",
            "Cache-Control": "max-age=0",
            "Content-Length": "47",
            "Content-Type": "application/x-www-form-urlencoded",# 接收类型
            "Cookie": cookies,
            "Host": "ea.swmu.edu.cn",
            "Origin": "http: // ea.swmu.edu.cn",
            "Proxy-Connection": "keep-alive",
            "Referer": "http://ea.swmu.edu.cn/jsxsd/",
            "Upgrade-Insecure-Requests": "1",
            "User-Agent": "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 "
                        "(KHTML, like Gecko) Chrome/76.0.3809.132 Mobile Safari/537.36",
      }
PostData = {
    'encoded': encoded# 账号密码加密后的东西(这里在没有粘贴的代码是解决了的)
}
url = 'http://ea.swmu.edu.cn/jsxsd/xk/LoginToXk'
msg = requests.session().post(url, headers=header, data=PostData, timeout=1000)# 这里登陆成功了msg是登陆成功的那个界面目前遇到的问题是我已经登陆成功了,但是不知道如何获取这个网站的其它内容,百度过相关的代码,是直接使用:r=requests.session().get(url)
但是还是不行,不知问题出在哪了.求高手指点一下谢谢了!

花不开但要富贵 发表于 2020-8-9 11:50

那要看你需要获取啥了

Menguy 发表于 2020-8-9 11:53

Heart灬欣 发表于 2020-8-9 11:55

Menguy 发表于 2020-8-9 11:53
你想得到什么啊?找到你想得到的东西的请求,发送请求,返回的就是你想拿到的

返回的是登陆界面.意思就是 相当于没有登陆成功

Heart灬欣 发表于 2020-8-9 11:56

Menguy 发表于 2020-8-9 11:53
你想得到什么啊?找到你想得到的东西的请求,发送请求,返回的就是你想拿到的

就是返回的这个界面

Heart灬欣 发表于 2020-8-9 11:58

1047861073 发表于 2020-8-9 11:50
那要看你需要获取啥了

就是不知道怎么获取,不是我不知道get或者post.

Menguy 发表于 2020-8-9 12:02

额微粒波地 发表于 2020-8-9 12:04

你这个网站不需要填验证码就可以登录,所以我建议你直接账号密码登录,不要使用cookie,因为cookie会过期,账密登录的话不改密码,页面没改 你这个程序就可以永久有效

涛之雨 发表于 2020-8-9 12:10

账号密码提交,获取cookie,携带cookie登录。
登录后当然是要携带cookie登录才有登录信息

Heart灬欣 发表于 2020-8-9 12:12

Menguy 发表于 2020-8-9 12:02
你这是没登录成功你先登录成功再说其他的, 你连门都没进你能拿到啥东西

我登陆成功了的啊,我给你的截图是后面的请求返回这个东西...我认为是后面的代码不对.
msg = requests.session().post(url, headers=header, data=PostData, timeout=1000)
这个代码就已经登陆成功了,返回的内容是登陆成功的界面,只是我没有贴出来
页: [1] 2 3
查看完整版本: python使用request模拟登陆之后不知道怎么获取后面内容