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

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

#1 2016-06-14 21:57:04

Mention ZeNobral
Recruit
Inscription : 2015-04-27
Messages : 17

Audit et Analyse
Scraping
Python

Combinateur de mots clés

Hello,

j'avais besoin de me faire un petit script de combinaison de mot clé, un peu plus avancé.
Je vous le livre ici, il est tout frais smile

Il faut python 3 pour l'utiliser

Il faut un fichier template qui liste les combinaisons à faire, et, pour chaque variable du fichier template, une liste de mots clés dans un fichier du même nom.

exemple d'une ligne dans le fichier template :

{%action.txt} {%produit.txt} de la marque {%marque.txt} chez {%vendeur.txt}

la ligne réalisera toutes les combinaisons possibles en fonction des expressions contenues dans action.txt, produit.txt, marque.txt et vendeur.txt

En espérant que ca vous plaise smile

Les script :


#! python 3

from itertools import product
import re
import argparse

def combine(expression):
    pattern = re.compile('{%([^}]+?)}')
    swaps = re.findall(pattern, expression)
    tpl = re.sub(pattern,'{}', expression)
    for pr in product(*[read_swaps(swap) for swap in swaps]):
        yield tpl.format(*pr) +'\n'


def read_swaps(swap_file):
    with open(swap_file) as f:
        for line in f:
            yield line.strip('\n')

if __name__ == '__main__':
    parser = argparse.ArgumentParser(prefix_chars='-', description=
                                     """make keyword combination by substituting
                                     in the template file, each {%filename.txt} with the list of
                                     keyword contained in filename.txt and the making the cartesian product.
                                     Example of possible lines :
                                     * Buy {%product.txt} {%color.txt} at the cheapest price
                                     * {%brand.txt} : find the best {%product}""")

    parser.add_argument('tpl_file', help='kewyord_combinator template_file.txt')
    parser.add_argument('-o', '--output', help='change default file output', default='result.txt')
    args = parser.parse_args()

    with open(args.tpl_file) as f_tpl:
        with open(args.output, mode='w') as f_out:
            for line in f_tpl:
                f_out.writelines(combine(line.strip('\n')))
 

Hors ligne

#2 2016-06-15 04:52:22

Mention Cyd
Scout
Lieu : Rennes
Inscription : 2013-01-18
Messages : 1 546

Audit et Analyse
Netlinking
Cloaking
Marketing

Re : Combinateur de mots clés

Hello @ZeNobral, super pratique merci pour le partage.

Juste pour bien comprendre, ton template tu le mets où ?


Work Hard In Silence, Let Success Make The Noise !
--> cedricguerin.fr

Hors ligne

#3 2016-06-15 06:29:31

Mention ZeNobral
Recruit
Inscription : 2015-04-27
Messages : 17

Audit et Analyse
Scraping
Python

Re : Combinateur de mots clés

Hello!

tu mets le template en argument du script.
si tu as appelé le fichier 'combinator.py' et ton fichier de template, 'template.txt' cela donne :

* combinator.py template.txt
ou :
* combinator.py template.txt -o resultats.txt (si tu veux forcer le nom du fichier de sortie sinon les résultats sont mis dans le fichier 'results.txt' par défaut

les fichiers textes avec les  listes de mots clés doivent être dans le même répertoire que le script.

à dispo ! smile

Hors ligne

#4 2016-06-15 07:13:30

Mention Dukofo
Soldier
Inscription : 2015-07-21
Messages : 1 175

Netlinking
Networking SEO

Re : Combinateur de mots clés

Sympa merci !


Intéressé par de l'article Sponso  -> Skype : seo.leadfr

Hors ligne

#5 2016-06-15 14:43:25

Mention msieur_benjamin
Scout
Inscription : 2014-10-02
Messages : 232

Re : Combinateur de mots clés

T'es un chef!

Hors ligne

#6 2016-06-16 06:02:10

Mention wildjack
Soldier
Inscription : 2013-10-30
Messages : 945

Scraping
Netlinking
Marketing
Networking SEO

Re : Combinateur de mots clés

@ZeNobral Salut Mec, beau partage !


Automatisation puissante et simple des tâches web avec Zennoposter
http://zennolab.com/en/buy-it-now/versi … 0290a31898

Skype : laurent_sauvage

Hors ligne

#7 2016-06-16 08:16:35

Mention razbithume
Soldier
Inscription : 2013-09-17
Messages : 827

Audit et Analyse
Scraping
Marketing
Site Web

Re : Combinateur de mots clés

merci @ZeNobral smile


Vive les regex et le xpath !

Hors ligne

#8 2016-06-16 09:51:11

Mention NicolasWeb
Soldier
Lieu : Besançon (France)
Inscription : 2015-09-30
Messages : 632

Rédaction
Sémantique

Re : Combinateur de mots clés

@ZeNobral

Merci !
Le système pour créer et chopper les arguments est sympa, je connaissais pas smile

Hors ligne

#9 2016-06-22 07:27:17

Mention Cyd
Scout
Lieu : Rennes
Inscription : 2013-01-18
Messages : 1 546

Audit et Analyse
Netlinking
Cloaking
Marketing

Re : Combinateur de mots clés

Merci pour ton retour @@ZeNobral ! Je vais aller tester ça rapidement smile


Work Hard In Silence, Let Success Make The Noise !
--> cedricguerin.fr

Hors ligne

Pied de page des forums