From b025afe9f3d23fc3646554a0e6b338dce60f6655 Mon Sep 17 00:00:00 2001
From: Shane
Date: Sat, 3 May 2025 13:58:44 +1000
Subject: [PATCH] Revert "remove double cta"
This reverts commit e2c47a1a050c0597246fa0b0e0d066ec528063c6.
---
foodie_automator_google.py | 16 ++--------------
foodie_automator_reddit.py | 21 +++++----------------
foodie_automator_rss.py | 25 +++++--------------------
foodie_hooks.py | 14 +++++++++++++-
4 files changed, 25 insertions(+), 51 deletions(-)
diff --git a/foodie_automator_google.py b/foodie_automator_google.py
index 5bf7ff6..7c6ccf9 100644
--- a/foodie_automator_google.py
+++ b/foodie_automator_google.py
@@ -256,9 +256,6 @@ def curate_from_google_trends(geo_list=['US']):
if not image_url:
image_url, image_source, uploader, page_url = get_image(image_query)
- # Log the fetched image details
- logging.info(f"Fetched image for '{post_data['title']}': URL={image_url}, Source={image_source}, Uploader={uploader}, Page URL={page_url}")
-
hook = get_dynamic_hook(post_data["title"]).strip()
# Generate viral share prompt
@@ -294,7 +291,8 @@ def curate_from_google_trends(geo_list=['US']):
share_text_encoded = quote(share_text)
post_url_encoded = quote(post_url)
share_links = share_links_template.format(post_url=post_url_encoded, share_text=share_text_encoded)
- post_data["content"] = f"{final_summary}\n\n{share_links}"
+ # Removed: cta = select_best_cta(post_data["title"], final_summary, post_url=post_url)
+ post_data["content"] = f"{final_summary}\n\n{share_links}" # Removed cta from content
is_posting = True
try:
post_to_wp(
@@ -320,16 +318,6 @@ def curate_from_google_trends(geo_list=['US']):
logging.info(f"Successfully saved '{title}' to {POSTED_TITLES_FILE}")
if image_url:
- # Check if image is already used
- used_images_list = load_json_file(USED_IMAGES_FILE, IMAGE_EXPIRATION_DAYS)
- used_image_urls = {entry["title"] for entry in used_images_list}
- if image_url in used_image_urls:
- logging.warning(f"Image '{image_url}' already used, attempting to fetch a new image")
- image_url, image_source, uploader, page_url = get_flickr_image(image_query, relevance_keywords)
- if not image_url:
- image_url, image_source, uploader, page_url = get_image(image_query)
- logging.info(f"New image fetched: URL={image_url}, Source={image_source}, Uploader={uploader}, Page URL={page_url}")
-
save_json_file(USED_IMAGES_FILE, image_url, timestamp)
used_images.add(image_url)
logging.info(f"Saved image '{image_url}' to {USED_IMAGES_FILE}")
diff --git a/foodie_automator_reddit.py b/foodie_automator_reddit.py
index 0b3a55a..f194789 100644
--- a/foodie_automator_reddit.py
+++ b/foodie_automator_reddit.py
@@ -211,7 +211,7 @@ def curate_from_reddit():
if not articles:
print("No Reddit posts available")
logging.info("No Reddit posts available")
- return None, None, random.randint(600, 1800)
+ return None, None, None
articles.sort(key=lambda x: x["upvotes"], reverse=True)
@@ -299,10 +299,8 @@ def curate_from_reddit():
if not image_url:
image_url, image_source, uploader, page_url = get_image(image_query)
- # Log the fetched image details
- logging.info(f"Fetched image for '{post_data['title']}': URL={image_url}, Source={image_source}, Uploader={uploader}, Page URL={page_url}")
-
hook = get_dynamic_hook(post_data["title"]).strip()
+ # Removed: cta = select_best_cta(post_data["title"], final_summary, post_url=None)
# Generate viral share prompt
share_prompt = get_viral_share_prompt(post_data["title"], final_summary)
@@ -311,7 +309,7 @@ def curate_from_reddit():
f' '
f'
'
)
- post_data["content"] = f"{final_summary}\n\n{share_links_template}"
+ post_data["content"] = f"{final_summary}\n\n{share_links_template}" # Removed cta from content
global is_posting
is_posting = True
@@ -337,7 +335,8 @@ def curate_from_reddit():
share_text_encoded = quote(share_text)
post_url_encoded = quote(post_url)
share_links = share_links_template.format(post_url=post_url_encoded, share_text=share_text_encoded)
- post_data["content"] = f"{final_summary}\n\n{share_links}"
+ # Removed: cta = select_best_cta(post_data["title"], final_summary, post_url=post_url)
+ post_data["content"] = f"{final_summary}\n\n{share_links}" # Removed cta from content
is_posting = True
try:
post_to_wp(
@@ -363,16 +362,6 @@ def curate_from_reddit():
logging.info(f"Successfully saved '{raw_title}' to {POSTED_TITLES_FILE} with timestamp {timestamp}")
if image_url:
- # Check if image is already used
- used_images_list = load_json_file(USED_IMAGES_FILE, IMAGE_EXPIRATION_DAYS)
- used_image_urls = {entry["title"] for entry in used_images_list}
- if image_url in used_image_urls:
- logging.warning(f"Image '{image_url}' already used, attempting to fetch a new image")
- image_url, image_source, uploader, page_url = get_flickr_image(image_query, relevance_keywords)
- if not image_url:
- image_url, image_source, uploader, page_url = get_image(image_query)
- logging.info(f"New image fetched: URL={image_url}, Source={image_source}, Uploader={uploader}, Page URL={page_url}")
-
save_json_file(USED_IMAGES_FILE, image_url, timestamp)
used_images.add(image_url)
logging.info(f"Saved image '{image_url}' to {USED_IMAGES_FILE} with timestamp {timestamp}")
diff --git a/foodie_automator_rss.py b/foodie_automator_rss.py
index 35a60f3..ab0bfd3 100644
--- a/foodie_automator_rss.py
+++ b/foodie_automator_rss.py
@@ -17,7 +17,7 @@ from requests.packages.urllib3.util.retry import Retry
from requests.adapters import HTTPAdapter
from foodie_config import (
RSS_FEEDS, RSS_FEED_NAMES, AUTHORS, RECIPE_KEYWORDS, PROMO_KEYWORDS,
- HOME_KEYWORDS, PRODUCT_KEYWORDS, PERSONA_CONFIGS, CATEGORIES,
+ HOME_KEYWORDS, PRODUCT_KEYWORDS, PERSONA_CONFIGS, CATEGORIES, CTAS,
get_clean_source_name, X_API_CREDENTIALS
)
from foodie_utils import (
@@ -32,10 +32,6 @@ from dotenv import load_dotenv
load_dotenv()
-# Log script version to ensure it's the latest
-SCRIPT_VERSION = "1.2.0"
-logging.info(f"Starting foodie_automator_rss.py version {SCRIPT_VERSION}")
-
is_posting = False
def signal_handler(sig, frame):
@@ -275,10 +271,8 @@ def curate_from_rss():
if not image_url:
image_url, image_source, uploader, page_url = get_image(image_query)
- # Log the fetched image details
- logging.info(f"Fetched image for '{post_data['title']}': URL={image_url}, Source={image_source}, Uploader={uploader}, Page URL={page_url}")
-
hook = get_dynamic_hook(post_data["title"]).strip()
+ # Removed: cta = select_best_cta(post_data["title"], final_summary, post_url=None)
# Generate viral share prompt
share_prompt = get_viral_share_prompt(post_data["title"], final_summary)
@@ -287,7 +281,7 @@ def curate_from_rss():
f' '
f''
)
- post_data["content"] = f"{final_summary}\n\n{share_links_template}"
+ post_data["content"] = f"{final_summary}\n\n{share_links_template}" # Removed cta from content
global is_posting
is_posting = True
@@ -313,7 +307,8 @@ def curate_from_rss():
share_text_encoded = quote(share_text)
post_url_encoded = quote(post_url)
share_links = share_links_template.format(post_url=post_url_encoded, share_text=share_text_encoded)
- post_data["content"] = f"{final_summary}\n\n{share_links}"
+ # Removed: cta = select_best_cta(post_data["title"], final_summary, post_url=post_url)
+ post_data["content"] = f"{final_summary}\n\n{share_links}" # Removed cta from content
is_posting = True
try:
post_to_wp(
@@ -339,16 +334,6 @@ def curate_from_rss():
logging.info(f"Successfully saved '{title}' to {POSTED_TITLES_FILE}")
if image_url:
- # Check if image is already used
- used_images_list = load_json_file(USED_IMAGES_FILE, IMAGE_EXPIRATION_DAYS)
- used_image_urls = {entry["title"] for entry in used_images_list}
- if image_url in used_image_urls:
- logging.warning(f"Image '{image_url}' already used, attempting to fetch a new image")
- image_url, image_source, uploader, page_url = get_flickr_image(image_query, relevance_keywords)
- if not image_url:
- image_url, image_source, uploader, page_url = get_image(image_query)
- logging.info(f"New image fetched: URL={image_url}, Source={image_source}, Uploader={uploader}, Page URL={page_url}")
-
save_json_file(USED_IMAGES_FILE, image_url, timestamp)
used_images.add(image_url)
logging.info(f"Saved image '{image_url}' to {USED_IMAGES_FILE}")
diff --git a/foodie_hooks.py b/foodie_hooks.py
index 8ef7379..fb4e763 100644
--- a/foodie_hooks.py
+++ b/foodie_hooks.py
@@ -49,9 +49,21 @@ def get_viral_share_prompt(article_title, content):
temperature=0.9
)
share_prompt = response.choices[0].message.content.strip()
+ # Remove any leading or trailing quotation marks
share_prompt = share_prompt.strip('"\'')
logging.info(f"Generated viral share prompt: {share_prompt}")
return share_prompt
except Exception as e:
logging.error(f"Viral share prompt generation failed: {e}")
- return "Love This? Share It"
\ No newline at end of file
+ return "Love This? Share It"
+
+def select_best_cta(title, content, post_url=None):
+ cta_templates = [
+ "Love This Foodie Find Hit That Like Button",
+ "Think This Dish Is a Game Changer Show Some Love With a Like",
+ "Hungry for More Foodie Insights Follow Us for the Latest Trends",
+ "Dont Miss Out on Foodie Updates Follow Us Today"
+ ]
+
+ cta = random.choice(cta_templates)
+ return cta
\ No newline at end of file