如何使用python请求库登录phone.ipkall.com?

如何使用python请求库登录phone.ipkall.com?,python,login,python-requests,Python,Login,Python Requests,我正在尝试学习python,但我对HTTP一无所知,我在这里读了一些关于如何使用请求登录网站的帖子。但它不起作用。我的简单代码在这里(不是实数和密码): 但是我无法获取我的个人信息,这些信息应该在登录后显示。有人能给我一些提示吗?或者给我指个方向?我不知道出了什么问题。出于安全原因,服务器不喜欢机器人(脚本)。所以你的脚本必须像人类一样使用真实的浏览器。首先使用get()获取会话cookie,将headers中的user-agent设置为real-one。使用http://httpbin.org

我正在尝试学习python,但我对HTTP一无所知,我在这里读了一些关于如何使用请求登录网站的帖子。但它不起作用。我的简单代码在这里(不是实数和密码):

但是我无法获取我的个人信息,这些信息应该在登录后显示。有人能给我一些提示吗?或者给我指个方向?我不知道出了什么问题。

出于安全原因,服务器不喜欢机器人(脚本)。所以你的脚本必须像人类一样使用真实的浏览器。首先使用
get()
获取会话cookie,将
headers
中的
user-agent
设置为real-one。使用
http://httpbin.org/headers
查看您的浏览器发送了什么
用户代理

始终检查结果
r.status\u code
r.url

因此,您可以从以下内容开始:
(我在此服务器上没有帐户,因此无法测试它)


顺便说一句:如果页面使用
JavaScript
您会遇到问题,因为
请求
无法在页面上运行
JavaScript

查看post请求返回的内容?顺便说一句,正确的url是
http://phone.ipkall.com/process.asp?action=verify
。另外值得注意的是,如果您关心安全性,则登录页面不受SSL保护。
#!/usr/bin/env python3

import requests

login_data = {'txtDID': '111111111',
              'txtPswd': 'mypassword'}

with requests.Session() as c:
    c.post('http://phone.ipkall.com/login.asp', data=login_data)
    r = c.get('http://phone.ipkall.com/update.asp')
    print(r.text)

print("Done")
#!/usr/bin/env python3

import requests

s = requests.Session()

s.headers.update({
    'User-agent': "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:30.0) Gecko/20100101 Firefox/30.0",    
})

# --------
# to get cookies, session ID, etc.

r = s.get('http://phone.ipkall.com/login.asp')

print( r.status_code, r.url )

# --------

login_data = {
    'txtDID': '111111111',
    'txtPswd': 'mypassword',
    'submit1': 'Submit'
}

r = s.post('http://phone.ipkall.com/process.asp?action=verify', data=login_data)

print( r.status_code, r.url )

# --------