我一直在使用 String(contentsOfURL: NSURL)
来检索网站的 HTML 文件(在我的例子中是 Instagram 上的帖子,比如这个 https://instagram.com/p/5FcnSATPa4/)。我需要一些关于帖子的信息,例如帖子收到的点赞数或与照片关联的位置。
例如,HTML 文件的这一行包含我需要的一些信息 \"location\":{\"has_public_page\":true,\"name\":\"Kaputa\\u015f海滩”
。问题是:如何提取“Kaputa Beach”名称?
谢谢。
最佳答案
为什么不使用实际的 Instagram API? https://instagram.com/developer/endpoints/likes/
当您直接从源代码中获取信息时,为什么还要花时间解析 HTML。
您可以使用 OAuth 授权 ( https://github.com/dongri/OAuthSwift )
您可以使用下面的调用检索喜欢图像的用户列表,然后您可以从中得出“喜欢”计数:
https://api.instagram.com/v1/media/{media-id}/likes?access_token=ACCESS-TOKEN
或者,如果您需要有关媒体的更多信息,您可以使用以下端点:
https://api.instagram.com/v1/media/{media-id}?access_token=ACCESS-TOKEN
详情在这里:https://instagram.com/developer/endpoints/media/#get_media
这是一个使用 Instagram API 的 swift 应用程序示例,您可以在 GitHub 上查看该项目以了解其工作原理。
https://maniacdev.com/2015/01/example-a-swift-based-ios-instagram-photo-downloader-and-browser
编辑:
您无需以特定用户身份进行身份验证即可使用您需要的方法。
以您自己的身份登录 instagram: https://instagram.com/accounts/login/
在请求中使用您的新客户端 ID 而不是您的访问 token :
https://api.instagram.com/v1/media/{media-id}/likes?client_id={CLIENT_ID}
或者https://api.instagram.com/v1/media/shortcode/5FcnSATPa4?client_id={CLIENT_ID}
您每小时最多可以使用您的客户端 ID 发出 5000 个请求。
您可以在此处试用 Instagram API:https://apigee.com/console/instagram
请记住使用您的客户 ID。
关于html - 使用 Swift 解析网站源 HTML 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31577477/