转换为不生成所需值的字符串

时间:2014-04-08 22:04:08

标签: python

我有一些代码使用'gdshortener'模块来生成源URL的缩短版本:

import simplejson
import httplib2
import twitter
import gdshortener
from random import randint

print("Python will now attempt to submit tweets to twitter...")


try:

    api = twitter.Api(consumer_key='',
                      consumer_secret='',
                      access_token_key='',
                      access_token_secret='')

    b = 0

    for a in range(0, 1): #only range 0-1 for this question, actually 1-21
        b = b + 1
        a = randint(1,60000000)
        randint
        print ("a = ", a)
        aa = str(a)


        s1 = gdshortener.ISGDShortener()
        print s1.shorten(url = 'http://audiotechracy.blogspot.co.uk/2014/03/reviewing-synapse-antidote-rack.html', custom_url = aa)
        ss1 = str(s1)

        status = api.PostUpdate("The new Synapse Antidote Rack Extension:" + ss1 + " #propellerhead #synapse")



    print("Tweets submitted successfully!")

except Exception,e:
    print str(e)    
    print("Twitter submissions have failed!!!")

我使用随机数生成器生成六位数字,然后将其输入到此模块的custom_url参数中。这工作正常,我得到一系列伪随机数。然而,当我尝试连接我的推文字符串,我的动态短网址和一些主题标签时,我得到一个错误,我无法连接字符串和整数值。

所以我创建了变量'ss1',这是's1'的字符串,但是这现在产生一条这样的推文:

The new Synapse Antidote Rack Extension:<gdshortener.gdshortener.ISGDShortener object at 0x000000000542AA20> #propellerhead #synapse

我怎样才能得到它以便制作的推文是:

The new Synapse Antidote Rack Extension: http://is.gd/58077181 #propellerhead #synapse

由于

1 个答案:

答案 0 :(得分:3)

检查模块并发现它返回一个元组。请参阅以下内容以提取正确的URL。

<强>代码:

import gdshortener

s1 = gdshortener.ISGDShortener()
x1 = s1.shorten(url='http://audiotechracy.blogspot.co.uk/2014/03/reviewing-synapse-antidote-rack.html')[0]
print x1

<强>结果:

http://is.gd/KKxmFd
[Finished in 0.8s]

请注意我在[0]末尾添加shorten的方法。这是因为shorten返回一个元组,我们可以将其索引类似于列表。

希望这有帮助。