我首先要说我对 Python 和一般编程非常陌生,但我的学习风格非常实用。
我想用 Python 来:
- 将电子表格的整个列收集到列表中
- 调用 Klout 的 API 以 (a) 获取 Klout 用户 ID 和 (b) 获取 Klout 分数
- 将这两个变量附加到同一电子表格的列中
我有一个 API 密钥、电子表格数据、Python 和 klout Python 脚本
谢谢你的帮助!
更新
感谢 Lonely 帮助我走到这一步。现在我只需要将我的分数结果写入电子表格。
from xlrd import open_workbook
from klout import *
k=Klout('my_API_key')
book=open_workbook('path_to_file')
sheet0=book.sheet_by_index(0)
List1=sheet0.col_values(0)
for screen_name in List1:
kloutId = k.identity.klout(screenName=screen_name).get('id')
score = k.user.score(kloutId=kloutId).get('score')
print screen_name, score
更新 2
已成功将 Twitter 网名重新放入新的电子表格。似乎无法正确显示分数。它也停止在 30(这恰好是 Klout 的每秒请求限制)。这就是我现在所拥有的。
from xlrd import open_workbook
import xlwt
from klout import *
k=Klout('My_API_Key')
book=open_workbook('Path_to_My_File')
sheet0=book.sheet_by_index(0)
List1=sheet0.col_values(0)
for screen_name in List1:
kloutId = k.identity.klout(screenName=screen_name).get('id')
score = k.user.score(kloutId=kloutId).get('score')
wbk = xlwt.Workbook()
sheet = wbk.add_sheet('sheet 1')
i = -1
for n in List1:
i = i+1
sheet.write(i,0,n)
b = 0
score1 = int(score)
for x in xrange(score1):
b = b+1
sheet.write(b,1,x)
wbk.save("KScores.xls")
最终工作版本
在个人联系人的大量帮助下,我也相信了这个脚本的大部分写作,我现在有了一个完整的 .py 脚本。
from xlrd import open_workbook
import xlwt
from time import sleep
from klout import *
klout_con = Klout('API_KEY_HERE', secure=True)
book = open_workbook('PATH_TO_YOUR_FILE_HERE')
sheet0 = book.sheet_by_index(0)
List1 = sheet0.col_values(0)
wbk = xlwt.Workbook()
sheet = wbk.add_sheet('sheet 1')
row = 0
for screen_name in List1:
klout_id = klout_con.identity.klout(screenName=screen_name).get('id')
score = klout_con.user.score(kloutId=klout_id).get('score')
sheet.write(row, 0, screen_name)
sheet.write(row, 1, score)
row += 1
print screen_name
sleep(1)
wbk.save('KScores.xls')
感谢社区和亚当,他们都帮助我把这个东西放在一起。是一个出色的入门项目。