如何使用python从post获取响应
我正在检查是否使用了当前的@hotmail.com地址 然而,我并没有得到使用chrome开发者工具会得到的回应如何使用python从post获取响应,python,json,request,urllib,outlook.com,Python,Json,Request,Urllib,Outlook.com,我正在检查是否使用了当前的@hotmail.com地址 然而,我并没有得到使用chrome开发者工具会得到的回应 #!/usr/bin/python import urllib import urllib2 import requests cookies = { 'MC0': '1449950274804', 'mkt': 'en-US', 'MSFPC': 'ID=a9b016cd39838248bbf321ea5ad1ecae&CS=1&LV=20
#!/usr/bin/python
import urllib
import urllib2
import requests
cookies = {
'MC0': '1449950274804',
'mkt': 'en-US',
'MSFPC': 'ID=a9b016cd39838248bbf321ea5ad1ecae&CS=1&LV=201512&V=1',
'wlv': 'A|ekIL-d:s*cAHzDg.2+1+0+3',
'HIC': '7c5d20284ecdbbaa||0|||',
'wlxS': 'wpc=1&WebIM=1',
'RVC': 'm=1&v=17.5.9510.1001&t=12/12/2015 20:37:45',
'amcanary': '0',
'CkTst': 'MX1449957709484',
'LDH': '9',
'wla42': 'KjEsN0M1RDIwMjg0RUNEQkJBQSwsLDAsLTEsLTE=',
'LN': 'u9GMx1450021043143',
}
headers = {
'Origin': 'https://signup.live.com',
'Accept-Encoding': 'gzip, deflate',
'Accept-Language': 'en-US,en;q=0.8,ja;q=0.6',
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.80 Safari/537.36',
'canary': 'aeIntzIq6OCS9qOE2KKP2G6Q7yCCPLAQVPIw0oy2Vksln3bbwVR9I8DcpfzC9RiCnNiJBw4YxtWsqJfnx0PeR9ovjRG+bF1jKkyPVWUTyuDTO5UkwRNNJFTIdeaClMgHtATSy+gI99ojsAKwuRFBMNbOgCwZIMCRCmky/voftX/63gjTqC9V5Ry/bECc2P66ouDZNC7TA/KN6tfsmszelEoSrmvU7LAKDoZnkhRQjpn6WYGxUzr5S+UYXExa32AY:1:3c',
'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',
'Accept': 'application/json',
'Referer': 'https://signup.live.com/signup?wa=wsignin1.0&rpsnv=12&ct=1450038320&rver=6.4.6456.0&wp=MBI_SSL_SHARED&wreply=https',
'X-Requested-With': 'XMLHttpRequest',
'Connection': 'keep-alive',
}
data = {"signInName":"testfoobar1234@outlook.com","uaid":"f1d115020fc94af6ba17e722277cdcb8","performDisambigCheck":"true","includeSuggestions":"true","uiflvr":"1001","scid":"100118","hpgid":"200407"}
asdf = requests.post('https://signup.live.com/API/CheckAvailableSigninNames?wa=wsignin1.0&rpsnv=12&ct=1450038320&rver=6.4.6456.0&wp=MBI_SSL_SHARED&wreply=https', headers=headers, cookies=cookies, data=data)
print(asdf.json())
这是chrome在检查时给我的信息testfoobar1234@hotmail.com:
这就是我的脚本给我的testfoobar1234@hotmail.com:
如果您想通过本地计算机上的python脚本连接到login.live.com,并使用正确的凭据,但Chrome上的Cookie——这是行不通的 你想做什么:阅读电子邮件,发送电子邮件,或只是从通讯录中获取联系人。脚本中的算法将有所不同。例如,通过outlook.com系统提供的邮件、位于people.live.com的联系人(以及我记得很清楚的API) 如果您想像Chrome那样模拟登录,您需要:
import json
data = json.loads(asdf.text)
print(data)
import json
data = json.loads(asdf.text)
print(data)
若你们想看看浏览器产生了多少动作,只需安装Firebug并禁用清理“网络”面板,然后看看在你们登录到你们的帐户之前处理了多少请求
但是,为了查看所有流量,建议使用Firefox+Firebug+篡改数据
而且,我认为使用诸如Selenium之类的现有LIB进行浏览器模拟会更快