将Facebook API数据导入Python,然后在cs中格式化

2024-06-17 08:19:51 发布

您现在位置:Python中文网/ 问答频道 /正文

首先,我想强调的是,我对python和api(一般来说是很好的编程)完全是个新手。在

我正试图想出一些方法来自动处理csv格式的facebook用户id的输入

即)

减肥药

百事可乐

可可

减肥可乐

然后让python脚本以csv格式输出页面信息 每个值用列分隔

即) 名字,喜欢的人数,谈论这个的人的数量等等。。。 减肥百事可乐,709788,4761等。。。。在

import urllib2
import urllib
import cookielib
import xml.etree.ElementTree as ET
import json
import datetime
import urlparse
import operator
import sys
import csv
import io


input = open('input.csv', 'rU')
output = open ('cleaned_input.csv', 'wb')
writer = csv.writer(output)
for row in csv.reader(input):
    if any(row):
        writer.writerow(row)
input.close()
output.close()

sharesoutput = open('results.csv', 'w')

with open('results.csv', 'w') as results:

    with open('cleaned_input.csv', 'rU') as csvfile:
        reader = csv.reader(csvfile, quoting=csv.QUOTE_NONE)

        for row in reader:
            myid='. '.join(row)
            try:
                myfile=urllib2.urlopen("http://graph.facebook.com/"+ myid)
                myjson=json.loads(myfile.read())
                names = myjson["name"]
                published = myjson["is_published"]
                likes = myjson["likes"]
                talkingabout = myjson["talking_about_count"]

                print names
                print likes
                print talkingabout
                print '\n'

                sharesoutput.write(names+"\t"+likes+"\t"+talkingabout+"\n")

            except:
                print "Error"

sharesoutput.close()

我尝试了一个类似上面的代码,它在pythonshell上打印值,但是它不能正确地保存在csv中(它是空白的)

如果有一种方法可以将其保存在csv中,并按列分隔每种值。。那太好了。有什么帮助吗?在


^{pr2}$

根据费利佩的建议修正了一些问题 还是一个空白csv。。。在


Tags: csvimportcloseinputoutputasopenresults