有没有办法在不指定网站的情况下建立搜索URL?

时间:2017-02-19 14:51:13

标签: url search permalinks

我想创建一个搜索的网址,而不指定要使用的网站。 理想情况下,它会使用默认搜索引擎进行搜索,这通常在Web浏览器的地址栏中实现。 有没有一个协议或类似的东西,如果不是为什么,如果有未来的可能性?

*这样做的原因是使用搜索数据创建持久的URL,而不依赖于谷歌这样的公司。

1 个答案:

答案 0 :(得分:4)

如果您愿意托管自己的服务器,您可以编写一个简单的Flask应用程序来接受搜索词作为参数,并循环使用可能的搜索引擎,以便始终有后备。这里的缺点是,如果找到新的搜索引擎或同样的话,你必须不断对服务器进行调整。

搜索引擎是这里的重要部分。没有网址,您基本上没有搜索结果。

我认为你要求通过搜索引擎进行搜索的通用方法。

如果是这样,大多数搜索引擎都会在搜索端点/search?q=test之后允许使用url参数。

例如:

from flask import Flask, request, abort
import requests

app = Flask(__name__)

@app.route('/search', methods=['GET'])
def perform_search():
    for engine in ['google','bing']:
        url = 'http://' + engine + '.com/search?q=' + request.values.get('q')
        if requests.get(url).status_code == 200:
            return url
        else:
            abort(404, "Search engine not found")


if __name__ == '__main__':
     app.debug = True
     app.run("127.0.0.1")

这将允许您根据运行此服务器的域名构建URL。如果域名是:www.mysearch.com,您可以使用网址www.mysearch.com/search?q=MYSEARCHTERM点击它。

这是一个简单的答案,有许多假设,因为我没有看到一种方法可以完全按照你的要求去做。