search2feed : transformer une recherche en flux

 Des fois, on a une idée qui germe spontanément, les yeux plongés dans le vague en touillant son café, en cherchant désespérément à se sortir la tête du fondement sous le jet brûlant de la douche ou en attendant patiemment la motivation nécessaire pour se mettre à bosser...

Search2feed est de celles-là... comme je regardais mes flux pour chercher les nouveautés torrent (en matière de distro linux et de films de vacances s'entend ), je me suis rendu compte que j'en venais toujours à recourir à googol pour une recherche plus complète ou sélective...

"Si on pouvait faire un flux à partir d'une recherche, ce serait bien" que je me suis dit... "pas con" que je me suis rétorqué du tac au tac (chuis comme ça, moi ) pis ça a fait "plop" dans ma tête et j'ai ajouté : "banco".

Et voilà...


 

Donc, search2feed permet de lancer une query à la googol, donc en filtrant les saletés de google et renvoie un flux RSS contenant le résultat.

Pour l'utiliser, il suffit de préciser la query en GET: search2feed.php?q=ce+que+je+recherche et c'est tout...

Pour que le tout fonctionne, j'ai réutilisé des bouts de googol, bien entendu (la parse_query pour ceux qui connaissent le code du bouzin ) mais aussi la fonction array2feed, postée il y a quelques temps ici même.

 


❝ 17 commentaires ❞

1  jerrywham le

Nickel Miguel.
Le referer me fait toujours autant marrer :D
Faut que je mette à jour ma version de gloogloo maintenant c'est malin ;)

 
2  Bronco le

Hinhin, oui j'ai bien bossé sur les referers bidons...
Des fois, quand je me relis, je me marre tout seul en n'omettant pas de me dire "c'que t'es con quand même ! "

 
3  tolima le

ça marche pas chez moi :/
le script me donne un flux vide.

 
4  Bronco le

Tiens, c'est étrange... le seul cas que j'ai vu de retour vide était dans Googol quand on était temporairement blacklisté...
Ou alors ton serveur bloque les accès aux fichiers distants sans lever d'erreur ?

 
5  koun le

salut

l'idée parait intéressante mais si tu pouvais développer pour les noobs comme moi...

j'ai copié collé dans leafpad ton script, modifié la partie " ce que je recherche" mais après ? quand j'essaye de l'ouvrir dans mon navigateur, ça foire.

ou alors, faut t'il que je l’intègre directement dans mon lecteur rss mais alors comment ?

 
6  Bronco le

C'est vrai que je n'ai pas tellement donné d'instructions Mea culpa *honte*

C'est plus simple: une fois le fichier sur ton serveur, mettons à l'adresse www.monserveur.com/search2array.php , tu l'appelles en ajoutant cette adresse dans ton lecteur rss et en la complétant par ta demande: www.monserveur.com/search2feed.php?q=ce+que+je+cherche

C'est tout...
tu peux faire un essai sur ma version :
http://files.warriordudimanche.net/search2feed.php?q=truefrench+torrent par exemple (pardon http://files.warriordudimanche.net/search2feed.php?q=distro+linux )
voilà

 
7  tolima le

"Ou alors ton serveur bloque les accès aux fichiers distants sans lever d'erreur ? "
Comment savoir ? Je suis en mutualisé chez ovh.

voilà la code source complet du flux :
<?xml version="1.0" encoding="utf-8" ?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
<description>truefrench torrent</description>
<title>GoogolSearch for truefrench torrent</title>
<link>http://warriordudimanche.net</link>
</channel></rss>

 
8  koun le

ça y est, ça marche ! ça foirait encore parce que je n'avais pas enregistré mon script leafpad avec l’extension .php

bon, en fait, c'est juste génial ton truc ! merci !

par contre, ça va pas arranger la trop longue liste de mon flux rss...

 
9  Bronco le

@Koun: de rien, heureux que ça serve ;)

@Tolima: Chez OVH, ça m'étonnerait qu'il y ait des blocages... pourtant...
Tu as uploadé le script sur ton serveur puis tu l'as appelé et il a renvoyé un flux sans items, c'est ça ?
Je ne vois pas d'où ça pourrait venir à part d'un blocage via la config de php...

Tu peux essayer de remplacer $page=file_curl_contents($URL.str_replace(' ','+',urlencode($query)).'&num='.$nb);
par $page=file_get_contents($URL.str_replace(' ','+',urlencode($query)).'&num='.$nb); pour voir...
Je doute toutefois que ça change quelque-chose.

Tu as essayé le script de googol ? (tu peux le trouver sur mon github) histoire de voir si lui fonctionne...

 
10  empo le

Excellent script , ça marche nikel.

Merci .

 
11  tolima le

non ça ne marche pas :/
ça me renvoie l'erreur :
Warning: file_get_contents(https://www.google.com/search?hl=fr&safe=off&id=hp&q=torrent&num=20): failed to open stream: HTTP request failed! HTTP/1.0 503 Service Unavailable in /.../search2feed.php on line 71

tant pis. Il avait l'air bien sympa ce script mais je n'avais pas encore d'idée pour l'utiliser.

 
12  Bronco le

Ok, donc c'est bien que tu es restreint pour les accès distants...
Teste Googol, pour voir...

 
13  tolima le

bon apparemment ce n'est pas possible en mutualisé chez ovh. mince !

 
14  Bronco le

ça ne pouvait être que ça... dommage.
Essaie des hébergements gratuits ?

 
15  Nono le

J'ai enfin pris le temps de l'installer et ...
PHP Parse error: syntax error, unexpected 'Accept' (T_STRING) in /mnt/nfs/home/www/search2feed.php on line 43

(Just to say, je vais chercher ce qui cause l'erreur, mais si jamais tu as une idée :D)

Merci :)

 
16  Nono le

Note : Oui, je n'avais pas "curl" d'installé, mais non, ca ne marche pas mieux avec :D

 
17  tolima le

j'ai essayé chez free (hébergement gratuit) et ça ne fonctionne pas non plus.

 

Fil RSS des commentaires de cet article

✍ Écrire un commentaire

Quelle est la première lettre du mot fwwgv ?