построение твит-ретвитной сети одного статуса - PullRequest
0 голосов
/ 04 марта 2020

Я использую tweepy и хочу создать список ребят из ретвитов. В идеале, если пользователь A является исходным постером твита, то пользователи B и C ретвитят из A, а затем пользователи D и E ретвитят из B, мой крайний список будет выглядеть так:

edgelist = pd.DataFrame(data = {'source':['A','A','B','B'],'target':['B','C','D','E']})

И моя сеть будет выглядеть так:

enter image description here

Однако, когда я фактически извлекаю из json, результирующие данные обрабатывают A как источник, даже когда твит был ретвитнут из B. Вот фрагмент того, как я делаю вещи, с примером твита, который должен иметь больше, чем просто ретвиты из ОП:

import flatten_json
import tweepy
import pandas as pd

# insert api 0Auth here

test_retweets = api.retweets(1235204648165871617)

test = []

for i in range(0,len(test_retweets)):
  test.append(flatten_json.flatten_json(test_retweets[i]._json))

retweet_df = pd.io.json.json_normalize(test)

source = []
target = []

for i in range(0,len(retweet_df)):
  target.append(retweet_df.id[i])
  source.append(retweet_df.retweeted_status_id[i])

final_df = pd.DataFrame({'source':source,'target':target})

Что я могу исправить? Есть ли какая-то часть json, которую я пропустил? Кроме того, я знаю, что ретвитов больше, чем дает мне этот метод. Должен ли я каким-либо образом интегрировать Cursor нумерацию страниц, чтобы увеличить свою доходность?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...