- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
下面是 WIKI 页面的 json。 (格式可能有很大偏差,所以这里有一个链接,可以更好地看到:https://en.wikipedia.org/w/api.php?action=query&prop=pageimages&titles=John_F._Kennedy&pithumbsize=500)
{ "batchcomplete": "", "query": { "normalized": [ { "from": "John_F._Kennedy", "to": "John F. Kennedy" } ], "pages": { "5119376": { "pageid": 5119376, "ns": 0, "title": "John F. Kennedy", "thumbnail": { "source": "https://upload.wikimedia.org/wikipedia/commons/thumb/5/5e/John_F._Kennedy%2C_White_House_photo_portrait%2C_looking_up.jpg/385px-John_F._Kennedy%2C_White_House_photo_portrait%2C_looking_up.jpg", "width": 385, "height": 500 }, "pageimage": "John_F._Kennedy,_White_House_photo_portrait,_looking_up.jpg" } } } }
我创建了结构来表示 json 键,但我不知道可以编写什么结构或 var 来表示数字 5119376,这显然是一个对象。所有其他键值都是字符串并且不会改变。但这个键很奇怪,因为它是一个整数,并且它在不同的维基页面之间变化。所以我不知道该给该键命名什么,因为它应该是一个数字,并且它会随着每个页面的变化而变化。
我尝试打印整个对象以查看它在控制台中的外观:
{ WikiStruct(query: quote_project.QueryStruct(pages: Optional(quote_project.PageStruct(pageid: nil, ns: nil, title: nil, thumbnail: nil, pageimage: nil))), batchcomplete: Optional("")) }
因此计算机得到“batchcomplete 是一个空字符串””,并且它还拾取了标准化的内容。但它说奇怪的 5119376 对象内的所有内容都是 nil。顺便说一下,我的最终目标是访问提供 wiki 页面主 jpg 图像的 url
我得到的错误是这样的:
Thread 1: EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0).
我的结构如下。我尝试过忽略 5119376 对象并尝试为其创建某种结构,但无济于事
struct WikiStruct: Decodable {
var query: QueryStruct
var batchcomplete: String?
}
struct QueryStruct: Decodable {
var normalized: [NormalizedStruct]?
var pages: PageStruct?
}
struct NormalizedStruct: Decodable{
var from: String?
var to: String?
}
struct PageStruct: Decodable{
var pageid: Int?
var ns: Int?
var title: String?
var thumbnail: ThumbStruct?
var pageimage: String?
}
struct ThumbStruct: Decodable{
var source: String?//this is what I want
var width: Int?
var height: Int?
}
最佳答案
今天遇到了完全相同的问题。设法解决了它。基本上,嵌套在pages下的数据是一个带键的对象,键为5119376。要解析它,只需将QueryStruct中的pages变量更改为字典即可。像这样:
struct QueryStruct: Decodable {
var normalized: [NormalizedStruct]?
var pages: [String:PageStruct]?
}
之后我就可以成功解析该对象了。打印 WikiStruct 对象:
WikiStruct(查询:QueryStruct(规范化:[NormalizedStruct(从:“John_F._Kennedy”,到:“约翰·肯尼迪”)],页面:[“5119376”:PageStruct(pageid:5119376,ns :0,标题:“约翰·肯尼迪”,缩略图:ThumbStruct(来源:“https://upload.wikimedia.org/wikipedia/commons/thumb/c/c3/John_F._Kennedy%2C_White_House_color_photo_portrait.jpg/385px-John_F ._Kennedy%2C_White_House_color_photo_portrait.jpg",宽度:385,高度:500),页面图像:"John_F._Kennedy,_White_House_color_photo_portrait.jpg")]),批量完成:"")
关于json - 需要帮助在 SWIFT 中解析 wikipedia json api,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54415777/
我正在尝试在维基百科上找到所有图像的完整列表,然后我可以将其过滤到公共(public)领域的图像。我已经从这里下载了 SQL 转储: http://dumps.wikimedia.org/enwiki
我正在学习使用 rasa 语言。为了使目标的答案多样化,我决定使用 Wikipedia api。为了创建我的工作环境,我使用带有以下命令的 anaconda: conda create --name
本页:http://wikidata.dbpedia.org/downloads/20160111/ 有一个名为 wikidatawiki-20160111-page-ids.ttl.bz2 的转储
这个问题已经有答案了: How to get the Infobox data from Wikipedia? (8 个回答) 已关闭 3 年前。 维基百科文章可能有信息框模板。通过以下调用,我可以获
我正在使用 Wikipedia API,在其中获取我输入的某些字符串的图像。 它总是返回 10 个结果,但我想要超过大约 50 个。 https://en.wikipedia.org/w/api.ph
我需要从 jquery(首选)或 php 数组中的特定维基百科文章获取“外部链接”链接。我已经浏览了维基百科 api,但似乎没有办法做到这一点。看起来 dbpedia 有一种方法可以做到这一点(dbp
我想在 python 程序中访问给定文章标题的维基百科信息框图像。有人可以告诉我如何获得吗? 以下截图提供了页面中所有图像的列表。我只想访问信息框图像。我该怎么做? import wikipedia
给定维基百科上的任何页面,例如 Coffee 的页面,我试图弄清楚如何提取页面上所有引用(包括任何元数据)的列表。乍一看,这似乎很容易,因为大多数页面都将它们全部列在称为“引用”的部分下。但是,当您检
我想计算特定语言的 wiki 转储中的实体/类别,比如英语。对于初学者来说,很难找到/遵循官方文档。到目前为止我所了解的是我可以下载一个 XML 转储(我从所有可用的不同文件中下载什么),并解析它(?
是否有任何 API 可以使用该页面的标题或页面 ID 或 url 获取页面的所有类别?我尝试在网上搜索,但我能找到的只是获取特定类别的转储。任何形式的帮助将不胜感激。 谢谢 最佳答案 您正在寻找的 A
Closed. This question is off-topic。它当前不接受答案。 想要改善这个问题吗? Update the question,所以它是用于堆栈溢出的on-topic。 9年前
我正在尝试构建维基百科文章及其类别的树形图。我需要做什么? 从这个站点(http://dumps.wikimedia.org/enwiki/latest/),我下载了: enwiki-latest-p
我使用 Wikipedia API 检索给定类别的页面列表。然而,页面由它们的 page_id 表示。如何使用 Wikipedia API 通过 page_id 获取页面的实际文本内容 最佳答案 AF
Closed. This question does not meet Stack Overflow guidelines。它当前不接受答案。 想要改善这个问题吗?更新问题,以便将其作为on-topi
以这个Freebase查询为例,如何使用Wikidata API运行相同的查询? [{ "id": null, "name": null, "type": "/film/film",
有没有一种方法可以使用 MediaWiki API 或任何其他工具自动检索使用大概日期的维基百科文章的先前版本(不知道 'oldid' 值)? 例如,我如何检索 history version of
从Wikipedia获取有关人员的所有文章的最简单方法是什么?我知道我可以下载所有页面的转储,但是然后如何过滤这些页面并仅获取有关人员的页面?我需要尽可能多的东西(最好超过一百万),因此使用任何一种A
有这个花哨的infobox在 中。如何获得 的值? 最佳答案 错误的方法:尝试解析 HTML Use (cURL/jQuery/file_get_contents/requests/wget/mor
我需要检索某个 wiki 项目的所有现有语言的列表。例如,所有 Wikivoyage或全部Wikipedia语言,就像他们的登陆页面一样。 如果可能的话,我更喜欢通过 MediaWiki API 来完
我需要访问非常旧的法语维基百科转储(维基百科的备份)。我成功地从 archive.org 找到了 2010 年的备份,现在我正在搜索 2006 年甚至更早的版本。我知道在最新的转储中包含以前的所有数据
我是一名优秀的程序员,十分优秀!