首页 > 解决方案 > Instagram:通过 Python 脚本访问用户 json 数据

问题描述

我是 Python 新手,我正在尝试使用以下方法提取我帐户的 json: https ://www.instagram.com/my_username/?__a=1 和 https://www.instagram.com/my_username/channel/? __a=1

这两个链接在 Chrome 浏览器上运行,但使用 Python 脚本,我总是被重定向到登录页面,而不是获取带有用户详细信息的 JSON。为什么?

这是 Python 脚本:

import requests
import json

r = requests.get("https://www.instagram.com/username/channel/?__a=1")
print(r.text)

预先感谢您的回答。

标签: pythonjsonpython-requestsinstagram

解决方案


您需要添加身份验证。就像从这里获取的示例一样https://requests.readthedocs.io/en/master/user/authentication/

>>> import requests
>>> from requests_oauthlib import OAuth1

>>> url = 'https://api.twitter.com/1.1/account/verify_credentials.json'
>>> auth = OAuth1('YOUR_APP_KEY', 'YOUR_APP_SECRET',
...               'USER_OAUTH_TOKEN', 'USER_OAUTH_TOKEN_SECRET')

>>> requests.get(url, auth=auth)
<Response [200]>

推荐阅读