-2

我在 google 电子表格中有 1000 个 facebook 页面的唯一 ID。我想抓取所有页面以获取他们的信息(喜欢、电子邮件等)我该怎么办?此外,我无法在浏览器中运行搜索查询以及在何处运行脚本。请尽可能详细。感谢你 :)

我试图为此制作一个python脚本,但它仅适用于第一个条目。

import urllib as url2
import json


f=open('ids.txt')
for i in f:
        url="http://graph.facebook.com/"+str(int(i))+"?fields=likes"
        data = url2.urlopen(url).read()
        print data
        data2=json.loads(data)
        print "number of likes on page with id "+str(data2["id"])+" has "+str(data2["likes"])+" likes !"

f.close()

ids.txt 文件包含 facebook 页面的 id。

1 493343230696447
2 1767379894975
3 122116091270024
4 545044065615713
4

1 回答 1

0

文件对象是一个行迭代器,而不是一个字迭代器。所以你需要改变:

for i in f:
    url="http://graph.facebook.com/"+str(int(i))+"?fields=likes"

至:

for i in f:
    # i holds the line, not the index
    index, page_id = i.strip().split()[:2]
    url="http://graph.facebook.com/"+page_id+"?fields=likes"
    # ...

这样,您可以在删除换行符 ( '\n') 后将行分别拆分为 theindex和 the page_id

无需将page_id字符串转换为整数再转换回字符串。

于 2015-03-28T13:41:40.643 回答