Domain Name Tips

  1. Keep it short
  2. Preference for .com
  3. Forget hyphens and numbers
  4. One syllable
  5. A word you can say

A domain name does not buy you anything. Building a brand around any name is as good as any name, and still difficult. My reasoning is just buy 1 domain name and do everything there.

expireddomains.net is a great place to re-register 0 day deleted domains. People have decided not to renew the domain, and now it is back on the market.

My advice to IANA is to phase out all the domain name extensions except for .com .net and .org and limit a valid domain name to 12 characters max, at most along with no numbers or hyphens.

Here are some useless python scripts...

# whois every combination from a.com to zzzz.com looking for unregistered domain

import whois

import sqlite3

def get_domain_expiration_date(domain_name):

try:

# Perform WHOIS lookup

domain_info = whois.whois(domain_name)

# Extract expiration date

if domain_info.expiration_date:

if isinstance(domain_info.expiration_date, list):

# Handle multiple expiration dates

expiration_date = domain_info.expiration_date[0]

else:

expiration_date = domain_info.expiration_date

return expiration_date

else:

return None

except Exception as e:

print(f"Error: {str(e)}")

return None

def insert_into_database(domain_name, expiration_date):

try:

# Connect to SQLite database

conn = sqlite3.connect('domains.db')

cursor = conn.cursor()

# Create table if not exists

cursor.execute('''CREATE TABLE IF NOT EXISTS domains (

domain_name TEXT PRIMARY KEY,

expiry_date TEXT

)''')

# Insert domain name and expiration date

cursor.execute('''INSERT OR REPLACE INTO domains (domain_name, expiry_date)

VALUES (?, ?)''', (domain_name, expiration_date))

# Commit changes

conn.commit()

conn.close()

except Exception as e:

print(f"Error inserting into database: {str(e)}")

def main():

# Loop through all combinations of domain names from aa.com to zzzz.com

for i in range(26):

for j in range(26):

for k in range(26):

# for l in range(26):

domain_name = chr(ord('a') + i) + chr(ord('a') + j) + chr(ord('a') + k) + ".com"

expiration_date = get_domain_expiration_date(domain_name)

print(f"Domain {domain_name} expiration date: {expiration_date}")

if expiration_date:

insert_into_database(domain_name, expiration_date)

print("Domain information inserted into database.")

else:

print("Unable to retrieve expiration date. Not inserted into database.")

insert_into_database(domain_name, datetime.now().strftime("%Y-%m-%d %H:%M:%S"))

domain_name = chr(ord('a') + i) + chr(ord('a') + j) + chr(ord('a') + k) + ".org"

expiration_date = get_domain_expiration_date(domain_name)

print(f"Domain {domain_name} expiration date: {expiration_date}")

if expiration_date:

insert_into_database(domain_name, expiration_date)

print("Domain information inserted into database.")

else:

print("Unable to retrieve expiration date for .org domain. Adding to database with today's date.")

insert_into_database(domain_name, datetime.now().strftime("%Y-%m-%d %H:%M:%S"))

if __name__ == "__main__":

main()

# Utilize a dictionary to find domain names less than 7 characters long # Yield results that have a definition in the English language

import whois

import sqlite3

from datetime import datetime

def get_domain_expiration_date(domain_name):

try:

# Perform WHOIS lookup

domain_info = whois.whois(domain_name)

# Extract expiration date

if domain_info.expiration_date:

if isinstance(domain_info.expiration_date, list):

# Handle multiple expiration dates

expiration_date = domain_info.expiration_date[0]

else:

expiration_date = domain_info.expiration_date

return expiration_date

else:

return None

except Exception as e:

print(f"Error: {str(e)}")

return None

def insert_into_database(domain_name, expiration_date):

try:

# Connect to SQLite database

conn = sqlite3.connect('domains.db')

cursor = conn.cursor()

# Create table if not exists

cursor.execute('''CREATE TABLE IF NOT EXISTS domains (

domain_name TEXT PRIMARY KEY,

expiry_date TEXT

)''')

# Insert domain name and expiration date

cursor.execute('''INSERT OR REPLACE INTO domains (domain_name, expiry_date)

VALUES (?, ?)''', (domain_name, expiration_date))

# Commit changes

conn.commit()

conn.close()

except Exception as e:

print(f"Error inserting into database: {str(e)}")

def main():

try:

# Connect to SQLite dictionary database

conn_dict = sqlite3.connect('small_word_set_en_dictionary.db')

cursor_dict = conn_dict.cursor()

# Select all words from the dictionary

cursor_dict.execute("SELECT word FROM entries WHERE length(word) < 7 ") # LENGTH

# cursor_dict.execute("SELECT word FROM entries")

words = cursor_dict.fetchall()

for word_tuple in words:

word = word_tuple[0]

# Omit word if it starts or ends with a hyphen

if word.startswith('-') or word.endswith('-'):

print(f"Skipping word '{word}' because it starts or ends with a hyphen.")

continue

domain_com = word + ".com"

domain_org = word + ".org"

expiration_date_com = get_domain_expiration_date(domain_com)

expiration_date_org = get_domain_expiration_date(domain_org)

print(f"Domain {domain_com} expiration date: {expiration_date_com}")

if expiration_date_com:

insert_into_database(domain_com, expiration_date_com.strftime("%Y-%m-%d %H:%M:%S"))

print("Domain information inserted into database.")

else:

print("Unable to retrieve expiration date for .com domain. Adding to database with today's date.")

insert_into_database(domain_com, datetime.now().strftime("%Y-%m-%d %H:%M:%S"))

print(f"Domain {domain_org} expiration date: {expiration_date_org}")

if expiration_date_org:

insert_into_database(domain_org, expiration_date_org.strftime("%Y-%m-%d %H:%M:%S"))

print("Domain information inserted into database.")

else:

print("Unable to retrieve expiration date for .org domain. Adding to database with today's date.")

insert_into_database(domain_org, datetime.now().strftime("%Y-%m-%d %H:%M:%S"))

conn_dict.close()

except Exception as e:

print(f"Error: {str(e)}")

if __name__ == "__main__":

main()

# Search the local database and send notification to linux desktop each day as cron job # Check the date not only today but any date in the past

import whois

import sqlite3

from datetime import datetime, timedelta

import subprocess

def send_desktop_notification(title, message):

subprocess.Popen(['notify-send', title, message])

def get_domain_expiration_date(domain_name):

try:

# Perform WHOIS lookup

domain_info = whois.whois(domain_name)

# Extract expiration date

if domain_info.expiration_date:

if isinstance(domain_info.expiration_date, list):

# Handle multiple expiration dates

expiration_date = domain_info.expiration_date[0]

else:

expiration_date = domain_info.expiration_date

return expiration_date

else:

return None

except Exception as e:

print(f"Error: {str(e)}")

return None

def insert_into_database(domain_name, expiration_date):

try:

# Connect to SQLite database

conn = sqlite3.connect('domains.db')

cursor = conn.cursor()

# Create table if not exists

cursor.execute('''CREATE TABLE IF NOT EXISTS domains (

domain_name TEXT PRIMARY KEY,

expiry_date TEXT

)''')

# Insert domain name and expiration date

cursor.execute('''INSERT OR REPLACE INTO domains (domain_name, expiry_date)

VALUES (?, ?)''', (domain_name, expiration_date))

# Commit changes

conn.commit()

conn.close()

except Exception as e:

print(f"Error inserting into database: {str(e)}")

def get_domain_expiring_today():

try:

# Connect to SQLite database

conn = sqlite3.connect('domains.db')

cursor = conn.cursor()

# Get today's date and format it to include time

today_date = datetime.now()

# Extract date component only

today_date = today_date.replace(hour=0, minute=0, second=0, microsecond=0)

# Query domains expiring today or in the past

cursor.execute(SELECT domain_name FROM domains WHERE expiry_date <= ?, (today_date,))

expiring_domains = cursor.fetchall()

# Close connection

conn.close()

return expiring_domains

except Exception as e:

print(f"Error querying database: {str(e)}")

return []

def main():

expiring_domains = get_domain_expiring_today()

if expiring_domains:

print("Domains expiring today:")

for domain_tuple in expiring_domains:

domain_name = domain_tuple[0]

print(domain_name)

# Get expiry date from the database for the specific domain

try:

# Connect to SQLite database

conn = sqlite3.connect('domains.db')

cursor = conn.cursor()

# Query the expiry date for the domain

cursor.execute(SELECT expiry_date FROM domains WHERE domain_name = ?, (domain_name,))

expiry_date_in_db = cursor.fetchone()

# Close connection

conn.close()

if expiry_date_in_db:

expiry_date_in_db = expiry_date_in_db[0] # Extract the expiry date from the tuple

print("expiry_date_in_db: " + str(expiry_date_in_db))

# Perform WHOIS check for the specific domain

new_expiry_date = get_domain_expiration_date(domain_name)

# Convert new_expiry_date to string

new_expiry_date_str = new_expiry_date.strftime("%Y-%m-%d %H:%M:%S")

# Convert the string back to datetime object

new_date = datetime.strptime(new_expiry_date_str, "%Y-%m-%d %H:%M:%S")

print("new_expiry_date: " + str(new_date))

if new_expiry_date:

# Update database if expiry date has changed

if new_expiry_date_str != expiry_date_in_db:

insert_into_database(domain_name, new_expiry_date_str)

print(f"Domain {domain_name} expiry date updated to {new_expiry_date}")

else:

print(f"Domain: {domain_name} expiries today")

notification_title = f'Domain: {domain_name} expires today'

notification_message = f'Domain {domain_name} expires today'

send_desktop_notification(notification_title, notification_message)

else:

print(f"Failed to get expiry date for {domain_name}")

else:

print(f"Failed to get expiry date from the database for {domain_name}")

except Exception as e:

print(f"Error querying database: {str(e)}")

continue

else:

print("No domains expiring today.")

if __name__ == "__main__":

main()

  

📝 📜 ⏱️  ⬆️