我正在尝试自动化为几个帐户获取Instagram的粉丝数量的过程。
例如,https://www.instagram.com/taylorswift/等
我曾尝试使用像BeautifulSoup这样的库。但是,面临的一个问题是,关注者的数量属于javascript类型,并且还有许多其他文本。
我的代码是:
>>> from bs4 import BeautifulSoup
>>> import requests
>>> url = "https://www.instagram.com/taylorswift/"
>>> page = requests.get(url)
>>> soup = BeautifulSoup(page.content)
>>> script = soup.select("script")

请问如何获得追随者的数量作为唯一的输出? (即76.8m)我是python和脚本的新手:/谢谢你。
答案 0 :(得分:4)
这段代码对我来说很好用:
#!/usr/bin/env python
import requests
from json import loads
username = "liamgiannini"
r = requests.get('https://www.instagram.com/'+username)
html = r.text.encode("utf-8")
text = html[html.index("window._sharedData = ")+21:]
text = (text[:text.index("};</script>")]+"}").replace('\\"', "")
dictionary= loads(text)
data = dictionary["entry_data"]["ProfilePage"][0]["user"]
print "followers: "+str(data["followed_by"]["count"])
通过打印print data.keys()
,您可以访问有关用户的更多信息