Raspberry pi'Response IndentationError'

问题描述 投票:0回答:2

我一直在寻找一个关于如何通过rasp pi发送短信文本的教程。这是我的代码,我不知道为什么我有错误。

#!/usr/bin/python 
#----------------------------------- 
# Send SMS Text Message 
# 
# Author : Matt Hawkins 
# Site : http://www.raspberrypi-spy.co.uk/ 
# Date : 30/08/2012 
# 
# Requires account with TxtLocal 
# http://www.txtlocal.co.uk/?tlrx=114032 
#  
#----------------------------------- 

# Import required libraries 
import urllib # URL functions 
import urllib2 # URL functions 

# Define your message 
message = 'Test message sent from my Raspberry Pi' 

# Set your username and sender name. 
# Sender name must alphanumeric and 
# between 3 and 11 characters in length. 
username = '[email protected]' 
sender = 'Jonny.D' 

# Your unique hash is available from the docs page 
# https://control.txtlocal.co.uk/docs/ 
hash = '8fe5dae7bafdbbfb00c7aebcfb24e005b5cb7be8' 

# Set the phone number you wish to send 
# message to. 
# The first 2 digits are the country code. 
# 44 is the country code for the UK 
# Multiple numbers can be specified if required 
# e.g. numbers = ('447xxx123456','447xxx654321') 
numbers = ('447xxxxxx260') 

# Set flag to 1 to simulate sending 
# This saves your credits while you are 
# testing your code. 
# To send real message set this flag to 0 
test_flag = 1 

#----------------------------------- 
# No need to edit anything below this line 
#----------------------------------- 

values = {'test' : test_flag, 
'uname' : username, 
'hash' : hash, 
'message' : message, 
'from' : sender, 
'selectednums' : numbers } 

url = 'http://www.txtlocal.com/sendsmspost.php' 

postdata = urllib.urlencode(values) 
req = urllib2.Request(url, postdata) 

print 'Attempt to send SMS ...' 

try: 
response = urllib2.urlopen(req) 
response_url = response.geturl() 
if response_url==url: 
print 'SMS sent!' 
except urllib2.URLError, e: 
print 'Send failed!' 
print e.reason

这是我在终端上弹出的错误信息

 File "send_sms.py", line 331
    response = urllib2.urlopen(req) 
           ^
IndentationError: expected an indented block
python sms response local raspberry-pi
2个回答
2
投票

Python需要适当的缩进,如下所示:

try: 
    response = urllib2.urlopen(req) 
    response_url = response.geturl() 
    if response_url==url: 
        print 'SMS sent!' 
except urllib2.URLError, e: 
    print 'Send failed!' 
    print e.reason

这是a section on Python indentation from Dive Into Python 3


1
投票
  • 声明分组是通过缩进来完成的[...]

source

© www.soinside.com 2019 - 2024. All rights reserved.