piedweb/google-spreadsheet-seo-scraper

Open source excel or libreoffice and PHP SEO google position SERP checker to track and follow a few website's keywords positions

0.1.24 2022-12-19 21:45 UTC

README

Open Source Package

Google Spreadsheet Seo Scraper

Latest Version Software License GitHub Tests Action Status Quality Score Code Coverage Type Coverage Total Downloads

Open source excel/libreoffice and PHP SEO google position SERP checker to track and follow a few website's keywords positions.

Homepage : https://piedweb.com/seo/serp

Requirements

PHP, CURL, composer, unoconv and libreoffice

Install

Via Packagist

$ # create the folder where you will install the soft
$ mkdir gs3 && cd gs3
$ # install the lib via composer
$ composer require piedweb/google-spreadsheet-seo-scraper
$ # create a link to the executable
$ ln -s vendor/piedweb/google-spreadsheet-seo-scraper/scrap.php console && chmod +x console

Usage

$ gs3/console
    --ods path/to/myfile.ods
    --domain host.tld

Facultative args

--proxy ip:port:username:pass (without proxy, you can check between 20 and 50 kw)
--cache /my/cache/folder/for/google/result (plain html)
--num-100 per default, the script check only the first result page.
          Using it permit to check the 100st results if the domain was not found
--sleep 60 (default, time to wait in seconds between to request on google)
--quiet

Examples

$ php scrap.php --ods "./kw.ods" --domain piedweb.com

$ php scrap.php --ods "./kw.ods" --domain piedweb.com,piedweb.fr

$ php scrap.php --ods "./kw.ods" --domain "you can set it directly in your ods file for each row"

About kw.ods

Seule les colonnes jusqu'à J sont importantes. Il est possible d'archiver autant de données que voulues dans les colonnes suivantes à condition de ne pas avoir deux colonnes portant le même nom. le doc peut être agrémenter de plusieurs feuilles à condition que la feuille par défaut reste la première.

Robin Delattre

Debugging tendance formula

=IF(J6="";"";                   // Si prev_pos est vide alors rien
    IF (J6="FAILED";"";            // Si prev_pos a échoué, alors rien
        IF(H6="FAILED";"";              // Si pos a échoué alors rien
             IF(H6="";"";                   // Si pos est vide alors rien
                IF(H6=-1;"x";                   // si kw n'est pas position, alors x
                    IF (H6=J6;"=";
                        IF(H6<J6;"+";
                            IF(J6=-1;"+";"-")
                        )
                    )
                )
            )
        )
    )
)

Legend for tendance

+ : le site grimpe vers la meilleur position
- : le site descend
x : le site n'est pas possitionnent
  : aucun résultat à analyser

Credits