如何让instagram用户了解其粉丝数量?

2024-05-09 20:23:59 发布

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

我试着在网上搜索,但似乎什么也找不到。我如何为Instagram帐户传入用户名,并能够在Python中检索其追随者总数

在我当前的代码中,我找到了应该工作的代码,但是我得到了以下错误:

AttributeError:“非类型”对象没有属性“attrs”

现行代码

import instaloader
from bs4 import BeautifulSoup
import requests

L = instaloader.Instaloader()
URL = "https://www.instagram.com/{}/"

def get_followers():

    # Login
    username = input("Enter your username: ")
    password = input("Enter your password: ")
    
    L.login(username, password)
    
    # Obtain profile metadata
    profile = instaloader.Profile.from_username(L.context, username)

    follow_list = []
    
    # Loop through each follower and add to list
    for followee in profile.get_followers():
        follow_list.append(followee.username)
    
    return follow_list

def parse_data(x):
    
    data = {}
    
    # Split up the data
    x = x.split("-")[0]
    x = x.split("-")
    
    # Make new key values for each attribute
    data["Followers"] = x[0]
    data["Following"] = x[2]
    data["Posts"] = x[4]
    
    return data
    

def scrape_data(username):
    
    r = requests.get(URL.format(username))
    s = BeautifulSoup(r.text, "html.parser")
    meta = s.find("meta", property="og : description")
    
    return parse_data(meta.attrs['content'])


if __name__ == "__main__":
    
    list_of_followers = get_followers()
    
    result = {}
    
    for follower in list_of_followers:
        follower_data = scrape_data(follower)
        
        # Add follower name + there followers to dictionary
        result[follower] = follower["Followers"]
        
    result = dict(sorted(result.items(), key=lambda item: item[1]))
    
    n_input = int(input("How many of your top followers do you want to see?: "))
    n_items = list(result)[:n_input]
    
    print(n_items)
    

Tags: 代码importinputyourdatagetdefusername
2条回答

看起来你没有从网页上获得任何信息,所以r是空的,s是空的,meta也是空的,这意味着它是一个none类型,所以试图找到meta的属性attrs没有意义,因为nonetype没有任何属性

我用跨平台的kivymd制作了一个instaloader来完成这一切:

您可以在此处找到回购协议:

https://github.com/T246-Edu/instgram_loader_with_username.git

相关问题 更多 >