如何在您自己的 Web 应用程序中实现 Google Suggest(例如使用 Python)

发布于 2024-07-07 12:22:27 字数 328 浏览 12 评论 0原文

在我的网站中,用户可以存储链接。

在指定字段中输入互联网地址时,我想显示一个类似于 Google Suggest 或 Chrome Omnibar 的建议/自动完成框。

示例:

用户输入 URL:

http://www.sta

将显示的建议:

http://www.staples.com
http://www.starbucks.com
http://www.stackoverflow.com

如何在不重新发明轮子的情况下实现这一目标? :)

In my website, users have the possibility to store links.

During typing the internet address into the designated field I would like to display a suggest/autocomplete box similar to Google Suggest or the Chrome Omnibar.

Example:

User is typing as URL:

http://www.sta

Suggestions which would be displayed:

http://www.staples.com
http://www.starbucks.com
http://www.stackoverflow.com

How can I achieve this while not reinventing the wheel? :)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

荒人说梦 2024-07-14 12:22:27

你可以尝试用
http://google.com/complete/search?output=toolbar&q=keyword

然后解析xml结果。

You could try with
http://google.com/complete/search?output=toolbar&q=keyword

and then parse the xml result.

小…楫夜泊 2024-07-14 12:22:27

我之前在 Django 服务器中做过一次。 有两个部分 - 客户端和服务器端。

客户端您必须在用户键入时向服务器发送 XmlHttpRequest,然后当信息返回时显示它。 这部分需要大量的 JavaScript,包括一些棘手的部分,例如回调和按键处理程序。

在服务器端,您必须处理 XmlHttpRequests,其中包含用户到目前为止所输入的内容。 就像一个 url,

www.yoursite.com/suggest?typed=www.sta

然后以某种方式编码的建议进行响应。 (我建议对建议进行 JSON 编码。)您还必须实际从数据库中获取建议,这可能只是一个简单的 SQL 调用或其他内容,具体取决于您的框架。

但服务器端部分非常简单。 我认为客户端部分比较棘手。 我发现这篇文章很有帮助

他用 php 写东西,但是客户端工作几乎是一样的。 特别是,您可能会发现他的 CSS 很有帮助。

I did this once before in a Django server. There's two parts - client-side and server-side.

Client side you will have to send out XmlHttpRequests to the server as the user is typing, and then when the information comes back, display it. This part will require a decent amount of javascript, including some tricky parts like callbacks and keypress handlers.

Server side you will have to handle the XmlHttpRequests which will be something that contains what the user has typed so far. Like a url of

www.yoursite.com/suggest?typed=www.sta

and then respond with the suggestions encoded in some way. (I'd recommend JSON-encoding the suggestions.) You also have to actually get the suggestions from your database, this could be just a simple SQL call or something else depending on your framework.

But the server-side part is pretty simple. The client-side part is trickier, I think. I found this article helpful

He's writing things in php, but the client side work is pretty much the same. In particular you might find his CSS helpful.

撩人痒 2024-07-14 12:22:27

雅虎有一个很好的自动完成控制

他们有一个示例。

显然,这对您获取数据没有任何帮助 - 但看起来您有自己的来源,并且实际上并不希望从 Google 获取数据。

Yahoo has a good autocomplete control.

They have a sample here..

Obviously this does nothing to help you out in getting the data - but it looks like you have your own source and arent actually looking to get data from Google.

半葬歌 2024-07-14 12:22:27

如果您希望自动完成功能使用您自己数据库中的日期,您需要自己进行搜索,并在用户键入时使用 AJAX 更新建议。 对于搜索部分,您可能需要查看 Lucene

If you want the auto-complete to use date from your own database, you'll need to do the search yourself and update the suggestions using AJAX as users type. For the search part, you might want to look at Lucene.

森林散布 2024-07-14 12:22:27

该控件通常称为字轮。 MSDN 最近有一篇演练,介绍如何使用 LINQ< 编写一个/代码>。 有两个关键方面:延迟执行和惰性求值。 文章也有源代码。

That control is often called a word wheel. MSDN has a recent walkthrough on writing one with LINQ. There are two critical aspects: deferred execution and lazy evaluation. The article has source code too.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文