app.py
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
import requests import csv import time def get_suggestions(keyword): url = "https://suggestqueries.google.com/complete/search" params = { "client": "firefox", "q": keyword } response = requests.get(url, params=params) if response.status_code == 200: try: return response.json()[1] except Exception as e: print(f"Parsing error: {e}") return [] return [] def generate_long_tail_keywords(base_keyword): long_tail_keywords = set() seed_phrases = [base_keyword + " " + chr(i) for i in range(97, 123)] # a-z for phrase in seed_phrases: suggestions = get_suggestions(phrase) long_tail_keywords.update(suggestions) time.sleep(0.5) # To avoid being rate-limited return sorted(list(long_tail_keywords)) def save_to_csv(keywords, filename="long_tail_keywords.csv"): with open(filename, "w", newline='', encoding="utf-8") as csvfile: writer = csv.writer(csvfile) writer.writerow(["Keyword"]) for keyword in keywords: writer.writerow([keyword]) print(f"Saved {len(keywords)} keywords to {filename}") # --- Usage --- user_input = input("Enter a keyword: ") results = generate_long_tail_keywords(user_input) save_to_csv(results) |