Dynadot

[FREE] Useful Python Script to filter expiring domain lists by customizable criteria

Labeled as FREE in More Free Stuff started by CrocBuzz, Jul 3, 2018.

Replies:
6
Views:
1,510

  1. CrocBuzz

    CrocBuzz Established Member

    Posts:
    64
    Likes Received:
    29
    I wrote a little Python script this week to aid myself in filtering daily expiring domain lists by criteria I specify. I have it set to run automatically using the built-in Automator application on macOS, but it can easily be run with a UNIX cronjob or Windows Task Scheduler as well.

    You can review the full source code at github.com/crock/dropcatch-filter
    If you are knowledgeable in Python, contributions are welcome. Just make a pull request anytime and I'll review it as soon as possible.

    Comes with a simple JSON configuration file that looks like this:
    Code:
    {
      "maxDomainLength": 10,
      "keywords": [
        "minecraft",
        "coin",
        "craft",
        "tech",
        "pvp"
      ],
      "tlds": [
        "com",
        "net",
        "org",
        "io",
        "co"
      ]
    }
    The script programmatically downloads the next day's expiring list from Namejet's website and parses it. It then filters the entire list in mere seconds based on the criteria you specify in the config.json file.

    If running on a timer of some sort, please set the script to run AFTER 7:00 AM PST because the next day's list is not available until that time the day before.

    Installation Instructions

    1. Download the Python 3.6.x+ installer from python.org/downloads
    2. Run the installer, but please make sure to tick the box labeled "Add Python to environment variables". It is unchecked by default. This is important!
    3. Open Terminal (Mac/Linux) or Command Prompt (Windows) and type the following command to let the terminal know where the script files are located. Replace [file path] with the full path to the directory containing the files: cd [file path]
    4. Next, run the following command: pip install -r requirements.txt
    5. The above steps only need to be run once. Now every time you want to run this utility, you simply run the following command: python main.py (if that doesn't work, try replacing python in that command with python3)
    6. If executed correctly, you will see domains being output according to your criteria and they will also be saved to a file in the results directory with the name results_MM-DD-YYYY.txt



     
    The views expressed on this page by users and staff are their own, not those of NamePros.
  2. creataweb

    creataweb Top Member VIP ★★★★★★★★★★

    Posts:
    5,287
    Likes Received:
    6,045
    Cool I’ll check this out today.
     
  3. CrocBuzz

    CrocBuzz Established Member

    Posts:
    64
    Likes Received:
    29
    Thanks to a generous soul from another forum for making a pull request. With the latest change, Python 3.6.x is now the base required version going forward.

    If you need a backported version (3.x.x only) for some reason, please send me a message.
     
  4. CrocBuzz

    CrocBuzz Established Member

    Posts:
    64
    Likes Received:
    29
    Just pushed a critical fix for a bug on Windows systems that prevented the script from running properly. Go download the latest zip from Github when you get the chance.

    Thanks to a Discord user for reporting this bug!
     
  5. Walter Eason

    Walter Eason Established Member

    Posts:
    118
    Likes Received:
    23
    Nice.......i'll check it out
     
  6. anantj

    anantj Active Member VIP

    Posts:
    4,056
    Likes Received:
    3,799
    Can you also add configs to search for alphabetical domains only (i.e. exclude hyphens and alphanumeric domains)?

    Thanks
     
  7. anantj

    anantj Active Member VIP

    Posts:
    4,056
    Likes Received:
    3,799
    For now, I've edited the Regex in Filters.py

    Thanks
     

Want to reply or ask your own question?

It only takes a minute to sign up – and it's free!

Share This Page

Lysted
  1. NamePros uses cookies and similar technologies. By using this site, you are agreeing to our privacy policy, terms, and use of cookies.
    Dismiss Notice
Loading...