OpenSearch API
Το πρωτόκολλο
OpenSearch παρέχει έναν εύχρηστο τρόπο ανάκτησης των αποτελεσμάτων μιας μηχανής αναζήτησης σε μορφή XML. To
yperdiavgeia.gr υποστηρίζει από σήμερα το OpenSearch API και δίνει την δυνατότητα σε οποιονδήποτε να πραγματοποιήσει αναζητήσεις μέσα από την εφαρμογή του ή το site του. Αν κάποιος θέλει να το χρησιμοποιήσει για οποιοδήποτε σκοπό καλό θα ήταν
να ενημερώσει πρώτα.
Με απλά λόγιαΜε απλά λόγια το OpenSearch API λειτουργεί ως εξής: μια εφαρμογή που θέλει να πραγματοποιήσει μια αναζήτηση στο
yperdiavgeia.gr στέλνει ένα HTTP GET Request σε ένα συγκεκριμένο php script του yperdiavgeia.gr το οποίο επιστρέφει ένα Atom Feed με τα αποτελέσματα. Στην συνέχεια η εφαρμογή μπορεί για παράδειγμα να κάνει parsing τα αποτελέσματα και να τα χρησιμοποιήσει όπως θέλει.
Μια πιθανή εφαρμογή του OpenSearch είναι το
Federated Search όπου μια μηχανή αναζήτησης πραγματοποιεί ταυτόχρονη αναζήτηση σε πολλές δικτυακές μηχανές αναζήτησης και παρουσιάζει ενιαία αποτελέσματα.
ΟδηγίεςΗ χρήση του OpenSearch είναι ιδιαίτερα απλή. Κάνετε ένα HTTP Request στο script
http://yperdiavgeia.gr/opensearch/ με τις εξής παραμέτρους:
- query με τιμή την λέξη κλειδί με την οποία θέλετε να κάνετε αναζήτηση
- page με τιμή τον αριθμό σελίδας από τον οποίο ξεκινούν τα αποτελέσματα
- limit με τιμή το πλήθος των αποτελεσμάτων ανά σελίδα.
http://yperdiavgeia.gr/opensearch/(query)/page:(page)/limit:(limit)
Τo αποτέλεσμα του HTTP Request είναι ένα Atom Feed της μορφής OpenSearch Response.
Παραδείγματα
Αναζήτηση για την λέξη "μηχανική μάθηση"
http://yperdiavgeia.gr/opensearch/μηχανική μάθηση
Αναζήτηση για την λέξη "library" και εμφάνιση των πρώτων 20 αποτελεσμάτων.
http://yperdiavgeia.gr/opensearch/library/page:1/limit:20Αναζήτηση για την λέξη "data mining" και εμφάνιση των αποτελεσμάτων 10 εώς 20.
http://yperdiavgeia.gr/opensearch/data+mining/page:1/limit:10
ΧρήσιμαΓια το validation των Atom feeds του
yperdiavgeia.gr χρησιμοποιήθηκε το
http://www.feedvalidator.orgΚάποιες άλλες χρήσιμες πηγές που βοήθησαν στην ανάπτυξη είναι οι παρακάτω: