如何在Kotlin中使用Jsoup搜索网站

0yycz8jy  于 2023-10-23  发布在  Kotlin
关注(0)|答案(2)|浏览(110)

我想在我的应用程序中使用https://www.devicespecifications.com/网站。有一个搜索框在这个网站的用户输入一个手机型号,然后按下回车键,导航到另一个页面,显示所有规格的手机。我想在Kotlin中使用Jsoup库以编程方式实现这一点。搜索框相关的页面来源为:<input id="search" type="text" name="search" autocomplete="off" value="" placeholder="Search" disabled />我在Kotlin中的代码是:val doc = Jsoup.connect("https://www.devicespecifications.com").get() val searchText=doc.getElementById("search") searchText?.attr("value", phoneName)我可以在serach框架中设置一个值,但我不知道如何以编程方式提交它并导航到规范页面。提前感谢你的帮助

jjjwad0x

jjjwad0x1#

如果你对这个URL执行一个请求:
https://www.devicespecifications.com/index.php?action=search&language=en&search=nokia
它会给予你在网站搜索中看到的预览HTML:

这将返回所有搜索结果的JSON列表。单个搜索结果如下所示:

{
   "html":"<div style=\"float:left; width: 40px; height: 40px; background: url(https:\/\/www.devicespecifications.com\/images\/model\/50c75d98\/40\/main.jpg); no-repeat left top;\"><\/div><div class=\"icon-arrows\" style=\"float: left; margin: 12px 8px 0px 4px;\" onmousedown=\"App.comparison.add('50c75d98'); event.preventDefault(); event.stopPropagation(); return false;\"><\/div><div style=\"float: left; line-height: 40px;\">Nokia C210<\/div>",
   "url":"https:\/\/www.devicespecifications.com\/en\/model\/50c75d98",
   "type":1,
   "selectable":true
},

解析JSON,从中可以找到电话详细信息页面的URL:
"url":"https:\/\/www.devicespecifications.com\/en\/model\/50c75d98"
(在取消转义之后:https://www.devicespecifications.com/en/model/50c75d98
这给了你所有的细节(如果你在html上使用JSOUP):

j7dteeu8

j7dteeu82#

我在谷歌搜索手机型号,然后在开源页面,我搜索到手机规格页面的相关链接。

相关问题