Skip to content
Automate Semrush reports exports
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

Semrush Reports

My first ever Python project. This script allows you to download up to 5 organic reports from Semrush without going through the API.


You will need :

  • Python 3
  • Pip (normally directly downloaded with Python)
  • Requirements.txt
  • Chromedriver (for windows or mac)
  • A Semrush account


  • Step 1 : Python 3

    Get it from :

  • Step 2 : Pip

    Enter this code in your terminal

    pip --version

    If no errors, we're good. Otherwise install pip from :

  • Step 3 : Requirements.txt

    Enter this code in your terminal

    pip install -r requirements.txt

    This is for installing all the script requirements

  • Step 4 : Selenium & Chromedriver

    Go on chrome://settings/help and check your version.

    Then go on and download the right version (mac or windows)

    Then move the chromedriver file to the driver folder

    Running the script

  • Input your Semrush login + password

    open with any text editor and input your login and password into these 2 lines

    # Input your SemRush Login here
    semrush_mail ="XXXXXXXXX"
    semrush_password ="XXXXXXXXXX"
  • Launching the script

    open the terminal and write

    cd /yourfilepath/semrush_report

    First line is to go into the folder where is located (copy paste your own path). Second one is to launch the script (on mac you will need to type python3)

  • Using the script

    You can enter up to 5 websites (if you don't want 5 websites, just type "none"). You will also have to choose among a database list (countries where the keyword and posiitions will be exported).

    For example :

    Enter your website:
    Enter second website, (if no website type : "None") :
    Enter third website, (if no website type : "None") :
    Enter fourth website, (if no website type : "None") : none
    Enter yout Data Base ( ['us', 'uk', 'br', 'ca', 'au', 'fr', 'de', 'it', 'nl', 'es', 'in', 'ru', 'jp', 'tr', 'dk', 'mx', 'ar', 'pl', 'be', 'ie', 'se', 'ch', 'fi', 'hu', 'no', 'il', 'sg', 'hk']) :fr
    Ok let's go !

    This will get the organic reports on the French database for these 3 websites.

    Get the results

    To get the .xls files, just go into the /excel/ file and they will be there.


    This project is licensed under the GPL v3 License - see the file for details

    Wanna know more ?

  • You can’t perform that action at this time.