2017-02-19 6 views
2

Ich möchte eine URL erstellen, die ohne Angabe der zu verwendenden Website sucht. Im Idealfall würde es mit der Standardsuchmaschine suchen, die häufig in der Adressleiste von Webbrowsern implementiert wird. Gibt es ein Protokoll oder etwas Ähnliches dafür und wenn nicht, warum und wenn es irgendwelche zukünftigen Möglichkeiten gibt?Gibt es eine Möglichkeit, eine URL für die Suche ohne Angabe der Website zu erstellen?

* Der Grund dafür ist, lang anhaltende URLs mit Suchdaten zu erstellen, die nicht auf Verlassen Sie sich ein Unternehmen wie Google sagen.

+2

Ist "Nein" eine akzeptable Antwort? – SergGr

+0

Es scheint wie "Nein" ist die Antwort, aber ich bin verwirrt, warum eine solche nützliche Funktion nicht standardisiert oder zumindest diskutiert wurde. Wo ich lebe (Japan), sind AR-Codes überall der Standard, aber sie verwenden Google-URLs, wenn sie einen Suchbegriff eingeben. Der Hauptgrund, warum ich dies möchte, ist die Bereitstellung von dezentralisierten Links zu Daten, die durch die Angabe von theoretisch genug Informationen ermöglicht werden, um sie einzigartig zu machen. Alles was benötigt wird, ist etwa wie folgt: timestamp = ... & location = ... & info = ... –

Antwort

4

Wenn Sie bereit sind, Ihren eigenen Server zu hosten, können Sie eine einfache Flasche App schreiben könnte einen Suchbegriff als Parameter und Schleife über mögliche Suchmaschinen akzeptieren zu verwenden, so gibt es immer ein Rückfall ist. Der Nachteil hier ist, dass Sie ständig Anpassungen am Server vornehmen müssen, sollten neue Suchmaschinen gefunden werden oder ähnliches.

Die Suchmaschine ist der wichtige Teil hier. Ohne eine URL zu haben, haben Sie im Grunde kein Suchergebnis.

Ich glaube, Sie für eine generische Art und Weise fragen über Suchmaschinen zu suchen.

Wenn ja, erlauben die meisten Suchmaschinen einen URL-Parameter nach dem Such Endpunkt /search?q=test.

Zum Beispiel:

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") 

Dies würde erlauben Sie eine URL zu erstellen, basierend auf Ihren Domain-Namen, dass dieser Server ausgeführt wird. Wenn die Domain: www.mysearch.com wäre, könnten Sie sie mit der URL: www.mysearch.com/search?q=MYSEARCHTERM treffen.

Dies ist eine einfache Antwort, mit vielen Annahmen, wie ich nicht einen Weg finden, um genau das zu tun, was Sie fragen.

+0

Vielen Dank für die ausführliche Antwort, aber die Antwort hängt von einer URL ab, so dass das Problem nicht behoben wird. Wenn Suche? Q = MYSEARCHTERM ist ein defacto Standard oder ein tatsächlicher Standard, dann könnte es möglicherweise in verwandten Problemen nützlich sein, aber ich denke, dass weitere Beweise benötigt würden. –

Verwandte Themen