Web scraping 如何提取Instagram数据

Web scraping 如何提取Instagram数据,web-scraping,instagram,Web Scraping,Instagram,我正在尝试构建Instagram帐户的Microsoft Access数据库,并希望提取以下数据,以及其他内容: 帐户名 追随者人数 跟踪人数 员额数目(及其日期) 喜欢的图片数量 对图片的评论数 我在构建数据库方面没有任何困难,但我想知道是否有一种更容易/更快的方法来获取所有信息,而无需查看每个图片/帐户并选择信息 Microsoft Access是解决此问题的最佳方法吗?有更好的解决方案吗?你一定要看看Instagram的API,它可以为你提供你想要获取的所有公共信息。您只需要编写一个脚

我正在尝试构建Instagram帐户的Microsoft Access数据库,并希望提取以下数据,以及其他内容:

  • 帐户名
  • 追随者人数
  • 跟踪人数
  • 员额数目(及其日期)
  • 喜欢的图片数量
  • 对图片的评论数
我在构建数据库方面没有任何困难,但我想知道是否有一种更容易/更快的方法来获取所有信息,而无需查看每个图片/帐户并选择信息


Microsoft Access是解决此问题的最佳方法吗?有更好的解决方案吗?

你一定要看看Instagram的API,它可以为你提供你想要获取的所有公共信息。您只需要编写一个脚本来进行适当的API调用(如下所示)

从Instagram的网站:

我们尽最大努力让我们所有的URL都是RESTful的。每个端点(URL)可能支持四种不同http谓词中的一种。GET请求获取有关对象的信息,POST请求创建对象,PUT请求更新对象,最后DELETE请求将删除对象

当您在代码中使用URL时,只需准备好相关帐户的ACCESS-TOKEN值,就可以解压Instagram在每次GET请求时返回给您的json。如果数据不是直接可用的,您总是可以间接地将其备份出来。 -帐户名 -追随者人数 -跟踪人数

这里有一个很好的起点:

下面是如何在python中调用API:

#Python 2.7.6
#RestfulClient.py

import requests
from requests.auth import HTTPDigestAuth
import json

# Replace with the correct URL
url = "http://api_url"

# It is a good practice not to hardcode the credentials. So ask the user to enter credentials at runtime
myResponse = requests.get(url,auth=HTTPDigestAuth(raw_input("username: "), raw_input("Password: ")), verify=True)
#print (myResponse.status_code)

# For successful API call, response code will be 200 (OK)
if(myResponse.ok):

    # Loading the response data into a dict variable
    # json.loads takes in only binary or string variables so using content to fetch binary content
    # Loads (Load String) takes a Json file and converts into python data structure (dict or list, depending on JSON)
    jData = json.loads(myResponse.content)

    print("The response contains {0} properties".format(len(jData)))
    print("\n")
    for key in jData:
        print key + " : " + jData[key]
else:
  # If response code is not ok (200), print the resulting http error code with description
    myResponse.raise_for_status()
如果这个问题有“网络抓取”关键字,那么请允许我回答 在这里分享一些信息

Instagram的html源代码中包含JavaScript JSON数据 通过链接显示用户的信息,如 . 您可以通过以下方式解析这些数据: 任何脚本语言,都可以获取JSON数据

Instagram在一次请求中仅显示10篇帖子,您可以看到 用户的基本信息,如用户名、传记、帖子数量、帖子数量 追随者和追随者。但是,如果我们需要所有的喜欢和评论 每个照片帖子的所有图片或喜好和评论。然后 我们必须点击他们的“加载更多”按钮

加载更多请求Ajax调用包括“?max_id”,它将为您提供下一个 10个职位的信息。因此,您必须创建一个Post循环来发送/获取 在“max_id”为空或为空之前停止信息

请求示例:第一页,
https://www.instagram.com/demo-user/

下一个数据请求:
https://www.instagram.com/demo-user/?max_id=1533276522

等等

最近我有一些空闲时间,在Instagram上我很生气;)那就 制作了一个脚本来解决所有这些问题。这适用于PHP和代码 评论很好,所以我认为这不会引起任何问题 了解应用程序流程。你可以看到脚本,它是如何工作的 &可以将逻辑与任何其他语言结合使用

这个来自这个


&。。是的,它不需要Instagram API或其他工具:)

为什么不直接使用url查看json数据:

/?_a=1

本回购协议具备以下全部:

务必正确阅读选项

instagram scraper incindia-m 500——媒体元数据——包括位置——媒体类型无
给了我一个json,它有:

  • 指向媒体图像的url
  • 媒体类型、视图数量、
  • 喜欢的数量,评论的数量(--评论也会给出所有评论)
还有更多的东西需要我去探索


您还可以下载所有媒体

Iv。我将打开页面源代码并从中提取我需要的所有内容。访问是最糟糕的选择。据我所知,API要求用户允许您访问他们(已经公开)的信息。是这样吗?您好,我需要从Java作为后端进程来完成这项工作。你能告诉我们怎样才能卷曲加载更多()作为下一个url吗?我想获取hd_profile_pic_url_信息。有可能吗this@Awadesh,这是来自开发者方面的电话。“hd_profile_pic_url_info”是用户搜索的一个选项,但不幸的是,用户搜索尚未工作,这就是为什么您将无法获取“hd_profile_pic_url_info”。那么,您可以尝试使用json数据“”的标记(hashtag),并在json数据中找到“display_url”。希望这是帮助:)它工作,但它不是开放的,这意味着你应该登录到instagram,使这个url的工作