我正在研究python的web爬蟲,它收集站點上用戶發佈的帖子信息,並比較他們提供的所有用戶參與的帖子的分數。目前它的結構使我能夠收到以下數據:在python中過濾數據
results
是一個用戶名索引的字典,其中包含每個用戶歷史記錄的post
,points
鍵值結構的字典。
common
是以結果中第一位用戶的字典中的所有帖子開頭的列表。此列表應過濾到只有所有用戶有共同點的帖子
points
是一個用戶名索引的字典,它保持共享帖子上的點數總數。
我的過濾代碼如下:
common = list(results.values()[0].keys())
for user in results:
for post_hash in common:
if post_hash not in results[user]:
common.remove(post_hash)
else:
points[user] += results[user][post_hash]
我現在遇到的問題是,這實際上並沒有過濾掉不共享,因此,不提供精確的點值的帖子。
我在做什麼錯我的結構,有沒有更簡單的方法來找到常見的職位?
你可以發表你的數據結構的副本,我們來看看?只有兩個用戶+帖子和分數的小樣本會很好。 – miah