Информация о странице в Facebook с использованием Graph Api 2.2

У меня есть уникальный идентификатор 1000 страниц facebook внутри таблицы Google. Я хочу просканировать все страницы, чтобы получить их информацию (лайки, электронная почта и т. Д.), Что мне делать? Также я не могу запустить поисковый запрос в моем браузере и где запустить скрипт. Пожалуйста, будьте как можно более подробно. Спасибо:)

Я попытался сделать сценарий Python для этого, но он работает только для 1-й записи.

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.

1 493343230696447
2 1767379894975
3 122116091270024
4 545044065615713

1 ответ

Решение

Файловый объект - это итератор строки, а не итератор слова. Так что вам нужно изменить:

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'), к index и page_id, по отдельности.

Нет необходимости разыгрывать page_id строка в целое число и обратно в строку.

Другие вопросы по тегам