0

私はPythonとプログラミング全般に非常に慣れていないと言って始めますが、私の学習スタイルは非常に実践的です。

Python を使用して次のことを行いたいと考えています。

  1. スプレッドシートの列全体をリストにまとめる
  2. Klout の API を呼び出して、(a) Klout ユーザー ID を取得し、(b) Klout スコアを取得します。
  3. これら 2 つの変数を同じスプレッドシートの列に追加します

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 の 1 秒あたりのリクエスト制限です)。これが私が今持っているものです。

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') 

コミュニティと Adam に感謝します。優れたスターター プロジェクトでした。

4

2 に答える 2

1

Excel を読むには... XLRD を使用します

すべての ID をリスト形式で取得します。

のような反復を使用して、それらのそれぞれを読み取りますfor i in list with Klout_APi...

score = k.user.score(kloutId=kloutId).get('score')

しかし、サンプルデータは素晴らしかったでしょう...

于 2013-07-09T04:47:37.387 に答える
0

を使用xlrdすると、Excel からデータを読み取ったり、Excel にxlwtデータを書き込んだりできます。ドキュメントを読んでください。csv の場合はcsv、標準ライブラリにモジュールがあります。

于 2013-07-09T04:45:38.027 に答える