请求模块Python

时间:2012-07-29 01:01:51

标签: python-requests

我有一个运行PHP和CURL的应用程序。 我的想法是将应用程序移动到Python-Django-Requests。 我一直无法工作,希望你能帮我一臂之力。 该应用程序如下工作: 收集:一个号码,一个消息,并通过API发送短信。

PHP代码。 http://pastebin.com/PqpBgstD

import requests
import cookielib
posdata = "p_num_text=00513015924048&smstemplate=&message=message_sending&txtcount=8
           +char+%3A+1+Sms&hiddcount=152"
jar = cookielib.CookieJar()
user = 'xxx'
pass = 'xxx'
values = {'app': 'page', 'inc': 'login', 'op': 'auth_login',
           'username': user, 'password': pass} # data login
r = requests.post(url, data=values, cookies=jar) # Login
values = {'app': 'menu', 'inc': 'send_sms',
           'op': 'sendsmstopv_yes'}# values ​​to enter to send the sms 
r = requests.post(url, data=values, params=posdata, cookies=jar)# enter the area sms
print r.content

如何将CURL中的代码传递给请求?

以上代码是否合适?

1 个答案:

答案 0 :(得分:3)

您的代码无法使用,我已在下方附加了更正后的代码,请注意您无需使用cookielib Requests cookie生成CookieJar 1}}对象。

import requests

url = "http://dominio.com/subdominio/index.php"

username = 'xxx'
password = 'xxx'

payload = {
    'app': 'page',
    'inc': 'login',
    'op': 'auth_login',
    'username': username,
    'password': password}

r = requests.post(url, data=payload)  # Login

cSMS = "Sms"

payload = {
    'p_num_text': '00513015924048',
    'smstemplate': '',
    'message': 'message_sending',
    'txtcount': '8',
    'char': cSMS,   # your php code seems to be off for this one, double check it
    'hiddcount': '153'}

url = "http://dominio.com/subdominio/index.php?app=menu&inc=send_sms&op=sendsmstopv_yes"

r = requests.post(url, data=payload, cookies=r.cookies)  # enter the area sms

print r.text