gpt4 book ai didi

html - 使用 Delphi 中的 TWebbrowser 组件向网站发送数据和从网站接收数据

转载 作者:搜寻专家 更新时间:2023-10-31 22:52:47 26 4
gpt4 key购买 nike

我正在使用 Delpi 10.3 创建一个 VCL 应用程序,并希望通过让用户将书籍的 ISBN 输入 TEdit 组件并从那里将此值传递/发送到该网站上的搜索字段来支持某些 Web 功能: https://isbnsearch.org之后,该网站会查找 ISBN 并显示该书的作者。我想以某种方式访问​​搜索结果显示的信息(即作者),并再次在我的应用程序中使用它。

这是我的 GUI,为了更好地了解我想要完成的事情:

enter image description here

我可以为此使用什么代码?任何其他可行的建议或方法都是可以接受的。

最佳答案

在该网站上执行搜索时,它只是加载具有特定 URL 查询字符串的页面...

https://isbnsearch.org/search?s=suess

上面的例子是我搜索“suess”的时候,所以你可以很方便的拼接一个搜索URL。

您可以使用任何 HTTP 组件(例如 TIdHTTP)加载此搜索页面,然后使用 HTML 解析器抓取页面并读取您需要的内容。比尝试通读 TWebBrowser 容易得多。

enter image description here

最后,您实际上不会显示 HTML(我的意思是如果您愿意,您可以),但我们的想法是读取数据并以您自己的格式显示它。

在该特定页面上,首先找到 ID 为 searchresultsul 元素。然后,每个 li 元素都包含单独的结果。不幸的是,这个网站使用分页,每页只显示 10 个结果。为此,请为第二页使用另一个参数 &p=2 再次调用此页面,为第三页使用 &p=3,依此类推。


另一方面,这是获取此类信息的最糟糕方式。您应该做的是使用适当的 API,为您提供机器友好的数据。您引用的服务似乎没有选项,但这里有一个示例:

https://openlibrary.org/dev/docs/api/books - 这似乎也能为您提供比您正在使用的信息更多的信息。

关于html - 使用 Delphi 中的 TWebbrowser 组件向网站发送数据和从网站接收数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56046532/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com