Vous n'êtes pas identifié(e).

  • Contributions :
  • Vos boîtes de messages privés sont vides.

#1 2016-01-18 20:41:12

Mention duan78
Scout
Lieu : Paris
Inscription : 2012-08-31
Messages : 589

Audit et Analyse
Sémantique
Marketing
Social Engineering
Site Web

[Node] API Google suggest - Post de contribution aux devs

Bonjour à tous,

Comme vous le savez, depuis quelques temps j'ai mis en ligne une API Google Suggest développée en Node.js sur le forum que j'ai aujourd'hui rendu Open Source par le biais de GitHub.

Ce post sera utilisé pour son développement futur. J'espère sincérement vous voir contribuer wink

Dernière modification par duan78 (2016-01-18 22:47:30)


Arnaud BOYER, eMarketing Manager @ Label Group

Hors ligne

#2 2016-01-18 20:41:50

Mention duan78
Scout
Lieu : Paris
Inscription : 2012-08-31
Messages : 589

Audit et Analyse
Sémantique
Marketing
Social Engineering
Site Web

Re : [Node] API Google suggest - Post de contribution aux devs

Fonctionnalités futures :
Ajout des sources Youtube, Google News et Google Image : En Test
Récursivité alphabétique profonde (ab, ac, ad ...) : En Test
Sélection de la langue (actuellement fr_FR uniquement) : En cours
Multisources (Bing + Google) : En cours
Rotation de proxys (migration de request vers node-requester)
Avoir toutes les sources et récursivités dans un seul paramètre
Ajout de requêtes de suggestions prédéfinies (informationelles et transactionnelles type "acheter", "comment" etc.)
Format de sortie au choix (Json, CSV, XML)
Récursivité des suggestions (avec plusieurs niveaux)
Traitement par lots (possibilité d'envoyer plusieurs mots clés)
Possibilité de filtrer la sortie (contient uniquement/contient pas)

Dernière modification par duan78 (2016-01-20 20:15:59)


Arnaud BOYER, eMarketing Manager @ Label Group

Hors ligne

#3 2016-01-18 20:42:22

Mention duan78
Scout
Lieu : Paris
Inscription : 2012-08-31
Messages : 589

Audit et Analyse
Sémantique
Marketing
Social Engineering
Site Web

Re : [Node] API Google suggest - Post de contribution aux devs

Bug Actuel [Statut OK, merci à JHDscript] : Ma récursivité alphabétique profonde ne fonctionne pas car je "n'imbrique" pas ma boucle

Dernière modification par duan78 (2016-01-20 20:17:13)


Arnaud BOYER, eMarketing Manager @ Label Group

Hors ligne

#4 2016-01-18 21:30:02

Mention jhdscript
Recruit
Inscription : 2016-01-05
Messages : 45
Site Web

Re : [Node] API Google suggest - Post de contribution aux devs


var a = "abcdefghijklmnopqrstuvwxyz";
for (var i = 0;i < a.length; i++){
  for (var j = 0;j < a.length; j++){
    var myKW = KW + ' ' + a[i] + a[j];

    //Code que tu veux faire ici
  }
}
 

Si t as des besoins ou des questions hésite pas a me pm je t aiderai volontier (gratos bien evidemment) Entraide Powaaa

Dernière modification par jhdscript (2016-01-18 21:34:37)

Hors ligne

#5 2016-01-18 22:08:56

Mention duan78
Scout
Lieu : Paris
Inscription : 2012-08-31
Messages : 589

Audit et Analyse
Sémantique
Marketing
Social Engineering
Site Web

Re : [Node] API Google suggest - Post de contribution aux devs

jhdscript a écrit :

var a = "abcdefghijklmnopqrstuvwxyz";
for (var i = 0;i < a.length; i++){
  for (var j = 0;j < a.length; j++){
    var myKW = KW + ' ' + a[i] + a[j];

    //Code que tu veux faire ici
  }
}
 

Si t as des besoins ou des questions hésite pas a me pm je t aiderai volontier (gratos bien evidemment) Entraide Powaaa

Merci pour ton aide !!! Ca fonctionne sur ma console, hélas, j'ai un soucis au niveau du res.send, mais tu m'as beaucoup éclairé : je me prenais la tête pour rien avec l'alphabet ! ^^ (ensuite pour ma défense, c'est plus standard tongue)


Arnaud BOYER, eMarketing Manager @ Label Group

Hors ligne

#6 2016-01-18 22:28:52

Mention jhdscript
Recruit
Inscription : 2016-01-05
Messages : 45
Site Web

Re : [Node] API Google suggest - Post de contribution aux devs

Je te dis si ta des soucis hésite pas à mp :-)

Hors ligne

#7 2016-01-19 17:54:41

Mention duan78
Scout
Lieu : Paris
Inscription : 2012-08-31
Messages : 589

Audit et Analyse
Sémantique
Marketing
Social Engineering
Site Web

Re : [Node] API Google suggest - Post de contribution aux devs

jhdscript a écrit :

Je te dis si ta des soucis hésite pas à mp :-)

Je ne peux pas te MP, il faut d'abord que tu te présente sur le forum pour que je puisse ...

Mon problème semble venir de numberToDo / numberOfDone ...

J'ai mis ma version à jour sur git avec le fameux bug ....

Dernière modification par duan78 (2016-01-19 17:55:02)


Arnaud BOYER, eMarketing Manager @ Label Group

Hors ligne

#8 2016-01-19 20:55:19

Mention jhdscript
Recruit
Inscription : 2016-01-05
Messages : 45
Site Web

Re : [Node] API Google suggest - Post de contribution aux devs

Mince je pensai m'être présenté... Bon je fais ma présentation demain et je te filerai un coup de main

Hors ligne

#9 2016-01-20 19:46:39

Mention duan78
Scout
Lieu : Paris
Inscription : 2012-08-31
Messages : 589

Audit et Analyse
Sémantique
Marketing
Social Engineering
Site Web

Re : [Node] API Google suggest - Post de contribution aux devs

Les dernières fonctionnalités sont en cours de test, à priori je vais devoir quitter request pour passer sur phantom.js ou casper.js : j'ai des soucis d'user agent/proxys qui entrainent une limite lorsque trop d'appels (on parle en milliers d'appels en une seule fois)


Arnaud BOYER, eMarketing Manager @ Label Group

Hors ligne

#10 2016-01-20 19:51:03

Mention jhdscript
Recruit
Inscription : 2016-01-05
Messages : 45
Site Web

Re : [Node] API Google suggest - Post de contribution aux devs

Le problème de phantom, casper est que ils sont consommateur en mémoire. De plus impossible de faker leur référer.

Hors ligne

#11 2016-01-20 20:13:08

Mention duan78
Scout
Lieu : Paris
Inscription : 2012-08-31
Messages : 589

Audit et Analyse
Sémantique
Marketing
Social Engineering
Site Web

Re : [Node] API Google suggest - Post de contribution aux devs

jhdscript a écrit :

Le problème de phantom, casper est que ils sont consommateur en mémoire. De plus impossible de faker leur référer.

Je pensais que c'était ma solution, j'ai vu pas mal de chose où on pouvais fake l'user agent (ce qui me suffit pour le moment) et faire de la rotation de proxys ...

Ensuite, une autre solution, node-requester : mais ça ne me parrait pas forcement viable par rapport à ce que je veux faire ...

Ensuite ouai, faire tourner un phantom juste pour appeler une API peut être une hérésie, mais compte tenue du degrés d'antispam sur GG, ça me parrait être la seule solution ...

Petit truc, du coup je me suis rendu compte que client1 était aussi limité (moins que querrysuggest mais il y a quand même limite)

Le git est à jour wink
PS : petite surprise, bientôt l'introduction de bing wink

Dernière modification par duan78 (2016-01-20 20:14:35)


Arnaud BOYER, eMarketing Manager @ Label Group

Hors ligne

#12 2016-01-20 20:31:54

Mention jhdscript
Recruit
Inscription : 2016-01-05
Messages : 45
Site Web

Re : [Node] API Google suggest - Post de contribution aux devs

Duan pour le user agent et l utilisation de proxies et socks phantom conviendra mais le fake referer est plus problématique. Perso phantom me pose d autre souci dont la conso mémoire qui est de 60mo par instance à peu prêt.

J ai également remarqué que qd on utilise des proxies, le timeout http n est pas respecté.

Hors ligne

#13 2016-01-20 20:53:16

Mention duan78
Scout
Lieu : Paris
Inscription : 2012-08-31
Messages : 589

Audit et Analyse
Sémantique
Marketing
Social Engineering
Site Web

Re : [Node] API Google suggest - Post de contribution aux devs

jhdscript a écrit :

Duan pour le user agent et l utilisation de proxies et socks phantom conviendra mais le fake referer est plus problématique. Perso phantom me pose d autre souci dont la conso mémoire qui est de 60mo par instance à peu prêt.

J'ai également remarqué que qd on utilise des proxies, le timeout http n est pas respecté.

Je pense à un truc pour ton histoire de referer , pour mon api : c'est mort, mais pk tu ne fais pas un scenario où tu vas sur le site referer et tu injecte dans le dom via node le lien du site que tu souhaite scrapper ? --> ainsi, le refrer pourrait-être passé (j'avoue je suis pas du tous sur, car pour moi JS renvois un referer blank, mais bon si t'arrive à "l'injecter" ...

#TuPeuxMinsulterSurCetteRemarque


Arnaud BOYER, eMarketing Manager @ Label Group

Hors ligne

#14 2016-01-20 20:53:21

Mention christophebe
Scout
Lieu : N'importe où
Inscription : 2014-10-07
Messages : 100

Re : [Node] API Google suggest - Post de contribution aux devs

tu devrais peut-être utiliser async pour bien gérer tes requests asynchrones. La combi request + async + proxy ne me pose pas de prob en terme de nombres de requête : https://github.com/caolan/async

Cela pourrait peut-être résoudre ton problème. Ce n'est pas un problème de surcharge de l'event loop ?

Hors ligne

#15 2016-01-20 21:05:19

Mention duan78
Scout
Lieu : Paris
Inscription : 2012-08-31
Messages : 589

Audit et Analyse
Sémantique
Marketing
Social Engineering
Site Web

Re : [Node] API Google suggest - Post de contribution aux devs

christophebe a écrit :

tu devrais peut-être utiliser async pour bien gérer tes requests asynchrones. La combi request + async + proxy ne me pose pas de prob en terme de nombres de requête : https://github.com/caolan/async

Cela pourrait peut-être résoudre ton problème. Ce n'est pas un problème de surcharge de l'event loop ?

Nan, pour mon cas, ça vient vraiment de Google qui me détecte comme navigateur sans tête ...


Arnaud BOYER, eMarketing Manager @ Label Group

Hors ligne

#16 2016-01-20 21:09:33

Mention jhdscript
Recruit
Inscription : 2016-01-05
Messages : 45
Site Web

Re : [Node] API Google suggest - Post de contribution aux devs

Duan l injection fonctionne pour des proxies privés mais comme les proxies publiques sont tous bannis des sites pron et de Google ça ne me convient pas. Pour émuler des garder http j utilisé la console de chrome (F12) et je copie tous les headers pour les passer dans mes webrequests

Dernière modification par jhdscript (2016-01-20 21:10:05)

Hors ligne

#17 2016-01-20 21:10:45

Mention Mitsu
Soldier
Inscription : 2014-11-17
Messages : 1 872

Développement PHP
Développement JS
Audit et Analyse
Netlinking
Site Web

Re : [Node] API Google suggest - Post de contribution aux devs

C'est sur que ça consomme plus de mémoire mais l'intérêt de phantom et casper est de pouvoir lire du contenu généré en js/ajax donc pas tellement beaucoup de choix...
Maintenant si c'est pour scrapper de la serp Google ou tout autre contenu html, c'est sur y a pas d'intérêt.


Mitsu, un Expert SEO qui se fait une joie de partager ses délires sur internet...

Hors ligne

Pied de page des forums