whatsapp-mass-sender-group-marketing
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseWhatsApp Mass Sender & Group Marketing System
WhatsApp批量发送与群组营销系统
Overview
概述
This project provides automated tools for multi-platform social media marketing, focusing on:
- WhatsApp bulk messaging and group marketing campaigns
- TikTok & Instagram follower extraction from competitor accounts
- Automated engagement (likes, comments, follows, DMs)
- Lead filtering by demographics, activity, and AI-based criteria
- Cross-platform automation for social media growth
Primary use cases:
- E-commerce stores running targeted outreach
- Marketing agencies managing multiple client accounts
- MCN organizations building follower bases
- Affiliate marketers finding warm leads
本项目提供多平台社交媒体营销自动化工具,核心功能包括:
- WhatsApp批量消息发送和群组营销活动
- TikTok与Instagram粉丝提取:从竞品账号获取粉丝数据
- 自动化互动(点赞、评论、关注、私信)
- 线索筛选:基于人口统计、活跃度和AI标准筛选潜在客户
- 跨平台自动化:助力社交媒体账号增长
主要应用场景:
- 开展精准触达推广的电商店铺
- 管理多个客户账号的营销代理机构
- 打造粉丝矩阵的MCN机构
- 寻找精准潜在客户的联盟营销人员
Installation
安装说明
Based on the project structure, this appears to be a service-based system rather than self-hosted code. Access is provided through:
bash
undefined根据项目结构,这似乎是一个基于服务的系统,而非可自行部署的代码。可通过以下渠道访问:
bash
undefinedOfficial website for system access
系统访问官网
Technical support and documentation
技术支持与文档
Environment Setup
环境配置
Store credentials securely using environment variables:
bash
undefined使用环境变量安全存储凭据:
bash
undefined.env file
.env 文件
WHATSAPP_API_KEY=your_api_key_here
WHATSAPP_PHONE_NUMBER=+1234567890
INSTAGRAM_USERNAME=your_username
INSTAGRAM_PASSWORD=your_password
TIKTOK_SESSION_TOKEN=your_session_token
PROXY_SERVER=http://proxy.example.com:8080
undefinedWHATSAPP_API_KEY=your_api_key_here
WHATSAPP_PHONE_NUMBER=+1234567890
INSTAGRAM_USERNAME=your_username
INSTAGRAM_PASSWORD=your_password
TIKTOK_SESSION_TOKEN=your_session_token
PROXY_SERVER=http://proxy.example.com:8080
undefinedCore Features & Configuration
核心功能与配置
1. WhatsApp Mass Messaging
1. WhatsApp批量消息发送
Bulk message sending to contacts or groups:
python
import os
from whatsapp_marketing import MassSender向联系人或群组批量发送消息:
python
import os
from whatsapp_marketing import MassSenderInitialize sender
初始化发送器
sender = MassSender(
api_key=os.getenv('WHATSAPP_API_KEY'),
phone_number=os.getenv('WHATSAPP_PHONE_NUMBER')
)
sender = MassSender(
api_key=os.getenv('WHATSAPP_API_KEY'),
phone_number=os.getenv('WHATSAPP_PHONE_NUMBER')
)
Send to contact list
发送给联系人列表
contacts = ['+1234567890', '+0987654321']
message = "🔥 Special offer today only! Check out our new products at example.com"
sender.send_bulk_message(
recipients=contacts,
message=message,
delay_between=5, # seconds between messages
randomize_delay=True
)
**Group marketing:**
```pythoncontacts = ['+1234567890', '+0987654321']
message = "🔥 今日专属特惠!点击查看我们的新品:example.com"
sender.send_bulk_message(
recipients=contacts,
message=message,
delay_between=5, # 消息间隔秒数
randomize_delay=True
)
**群组营销:**
```pythonSend to multiple WhatsApp groups
发送给多个WhatsApp群组
groups = ['group_id_1', 'group_id_2', 'group_id_3']
sender.send_to_groups(
group_ids=groups,
message="Join our exclusive community! Link: example.com/join",
schedule_time="2026-06-01 10:00:00" # Optional scheduled send
)
undefinedgroups = ['group_id_1', 'group_id_2', 'group_id_3']
sender.send_to_groups(
group_ids=groups,
message="加入我们的专属社群!链接:example.com/join",
schedule_time="2026-06-01 10:00:00" # 可选定时发送
)
undefined2. Instagram Follower Extraction
2. Instagram粉丝提取
Extract followers from competitor accounts:
python
from instagram_scraper import FollowerExtractor
extractor = FollowerExtractor(
username=os.getenv('INSTAGRAM_USERNAME'),
password=os.getenv('INSTAGRAM_PASSWORD'),
proxy=os.getenv('PROXY_SERVER')
)从竞品账号提取粉丝:
python
from instagram_scraper import FollowerExtractor
extractor = FollowerExtractor(
username=os.getenv('INSTAGRAM_USERNAME'),
password=os.getenv('INSTAGRAM_PASSWORD'),
proxy=os.getenv('PROXY_SERVER')
)Extract competitor's followers
提取竞品粉丝
competitor_followers = extractor.get_followers(
target_account='competitor_username',
max_followers=5000,
filters={
'min_followers': 100,
'max_followers': 10000,
'is_verified': False,
'has_profile_picture': True
}
)
competitor_followers = extractor.get_followers(
target_account='competitor_username',
max_followers=5000,
filters={
'min_followers': 100,
'max_followers': 10000,
'is_verified': False,
'has_profile_picture': True
}
)
Save to CSV
保存为CSV文件
extractor.export_to_csv(competitor_followers, 'leads.csv')
**Hashtag-based lead extraction:**
```pythonextractor.export_to_csv(competitor_followers, 'leads.csv')
**基于话题标签的线索提取:**
```pythonFind users posting with specific hashtags
查找发布特定话题标签内容的用户
hashtag_leads = extractor.search_by_hashtag(
hashtags=['fitness', 'workout', 'gym'],
engagement_filters={
'min_likes': 50,
'min_comments': 5,
'posted_within_days': 30
},
max_results=1000
)
hashtag_leads = extractor.search_by_hashtag(
hashtags=['fitness', 'workout', 'gym'],
engagement_filters={
'min_likes': 50,
'min_comments': 5,
'posted_within_days': 30
},
max_results=1000
)
Filter by demographics
按人口统计信息筛选
filtered_leads = extractor.filter_by_demographics(
users=hashtag_leads,
criteria={
'age_range': [18, 35],
'gender': 'any',
'location': ['US', 'UK', 'CA']
}
)
undefinedfiltered_leads = extractor.filter_by_demographics(
users=hashtag_leads,
criteria={
'age_range': [18, 35],
'gender': 'any',
'location': ['US', 'UK', 'CA']
}
)
undefined3. TikTok User Extraction
3. TikTok用户提取
Extract engaged users from competitor videos:
python
from tiktok_scraper import TikTokExtractor
tiktok = TikTokExtractor(
session_token=os.getenv('TIKTOK_SESSION_TOKEN')
)从竞品视频提取互动用户:
python
from tiktok_scraper import TikTokExtractor
tiktok = TikTokExtractor(
session_token=os.getenv('TIKTOK_SESSION_TOKEN')
)Get users who liked/commented on competitor videos
获取点赞/评论竞品视频的用户
engaged_users = tiktok.extract_engaged_users(
video_url='https://tiktok.com/@competitor/video/123456789',
extraction_type='both', # 'likes', 'comments', or 'both'
max_users=2000
)
engaged_users = tiktok.extract_engaged_users(
video_url='https://tiktok.com/@competitor/video/123456789',
extraction_type='both', # 'likes', 'comments', 或 'both'
max_users=2000
)
Extract followers from competitor profile
提取竞品账号的粉丝
competitor_followers = tiktok.get_profile_followers(
username='competitor_username',
max_followers=10000
)
undefinedcompetitor_followers = tiktok.get_profile_followers(
username='competitor_username',
max_followers=10000
)
undefined4. Automated Engagement
4. 自动化互动
Auto-follow, like, and comment:
python
from social_automation import EngagementBot
bot = EngagementBot(
platform='instagram',
credentials={
'username': os.getenv('INSTAGRAM_USERNAME'),
'password': os.getenv('INSTAGRAM_PASSWORD')
}
)自动关注、点赞和评论:
python
from social_automation import EngagementBot
bot = EngagementBot(
platform='instagram',
credentials={
'username': os.getenv('INSTAGRAM_USERNAME'),
'password': os.getenv('INSTAGRAM_PASSWORD')
}
)Configure engagement campaign
配置互动活动
campaign = bot.create_campaign(
name='Competitor Targeting Q2',
actions={
'follow': True,
'like_posts': 3, # Like 3 recent posts per user
'comment': True,
'send_dm': True
},
targets=filtered_leads,
daily_limit=200, # Max actions per day
comment_templates=[
'Great content! 🔥',
'Love this! 💯',
'Amazing post! ✨'
],
dm_template='Hi! I love your content. Check out our page @yourpage 🚀'
)
campaign = bot.create_campaign(
name='竞品定向Q2活动',
actions={
'follow': True,
'like_posts': 3, # 每个用户点赞3条近期帖子
'comment': True,
'send_dm': True
},
targets=filtered_leads,
daily_limit=200, # 每日最大操作次数
comment_templates=[
'Great content! 🔥',
'Love this! 💯',
'Amazing post! ✨'
],
dm_template='Hi! I love your content. Check out our page @yourpage 🚀'
)
Start automated engagement
启动自动化互动
bot.run_campaign(campaign)
undefinedbot.run_campaign(campaign)
undefined5. Multi-Account Management
5. 多账号管理
Manage multiple social accounts:
python
from account_manager import MultiAccountManager
manager = MultiAccountManager()管理多个社交账号:
python
from account_manager import MultiAccountManager
manager = MultiAccountManager()Add accounts
添加账号
manager.add_account('instagram', {
'username': 'account1',
'password': os.getenv('IG_ACCOUNT1_PASSWORD')
})
manager.add_account('instagram', {
'username': 'account2',
'password': os.getenv('IG_ACCOUNT2_PASSWORD')
})
manager.add_account('instagram', {
'username': 'account1',
'password': os.getenv('IG_ACCOUNT1_PASSWORD')
})
manager.add_account('instagram', {
'username': 'account2',
'password': os.getenv('IG_ACCOUNT2_PASSWORD')
})
Rotate accounts for actions
分配账号执行操作
manager.distribute_actions(
action_type='follow',
targets=competitor_followers,
actions_per_account=100
)
undefinedmanager.distribute_actions(
action_type='follow',
targets=competitor_followers,
actions_per_account=100
)
undefinedCommon Patterns
常见流程
Lead Generation Workflow
线索生成工作流
python
undefinedpython
undefinedComplete lead generation and outreach workflow
完整的线索生成与触达工作流
def automated_lead_funnel():
# 1. Extract leads from multiple sources
ig_leads = extractor.get_followers('competitor1', max_followers=5000)
tiktok_leads = tiktok.get_profile_followers('competitor2', max_followers=5000)
hashtag_leads = extractor.search_by_hashtag(['yourindustry'], max_results=1000)
# 2. Combine and deduplicate
all_leads = list(set(ig_leads + tiktok_leads + hashtag_leads))
# 3. Filter high-quality leads
qualified_leads = extractor.filter_by_demographics(
users=all_leads,
criteria={
'min_followers': 200,
'max_followers': 50000,
'has_business_account': False,
'engagement_rate': 0.02 # 2% minimum
}
)
# 4. Automated engagement
bot.create_campaign(
name='Auto Funnel',
actions={'follow': True, 'like_posts': 2, 'send_dm': True},
targets=qualified_leads,
daily_limit=150
)
# 5. Export for WhatsApp follow-up
phone_numbers = extract_phone_numbers(qualified_leads)
sender.send_bulk_message(
recipients=phone_numbers,
message="Special offer for Instagram followers! Use code IG20: example.com"
)automated_lead_funnel()
undefineddef automated_lead_funnel():
# 1. 从多渠道提取线索
ig_leads = extractor.get_followers('competitor1', max_followers=5000)
tiktok_leads = tiktok.get_profile_followers('competitor2', max_followers=5000)
hashtag_leads = extractor.search_by_hashtag(['yourindustry'], max_results=1000)
# 2. 合并并去重
all_leads = list(set(ig_leads + tiktok_leads + hashtag_leads))
# 3. 筛选高质量线索
qualified_leads = extractor.filter_by_demographics(
users=all_leads,
criteria={
'min_followers': 200,
'max_followers': 50000,
'has_business_account': False,
'engagement_rate': 0.02 # 最低2%互动率
}
)
# 4. 自动化互动
bot.create_campaign(
name='自动转化漏斗',
actions={'follow': True, 'like_posts': 2, 'send_dm': True},
targets=qualified_leads,
daily_limit=150
)
# 5. 导出用于WhatsApp跟进
phone_numbers = extract_phone_numbers(qualified_leads)
sender.send_bulk_message(
recipients=phone_numbers,
message="Instagram粉丝专属优惠!使用优惠码IG20:example.com"
)automated_lead_funnel()
undefinedScheduled Campaign Management
定时活动管理
python
from scheduler import CampaignScheduler
scheduler = CampaignScheduler()python
from scheduler import CampaignScheduler
scheduler = CampaignScheduler()Schedule daily follower extraction
定时每日提取竞品粉丝
scheduler.add_task(
name='Daily Competitor Scrape',
function=extractor.get_followers,
args=['competitor_username'],
kwargs={'max_followers': 500},
schedule='daily',
time='09:00'
)
scheduler.add_task(
name='每日竞品数据采集',
function=extractor.get_followers,
args=['competitor_username'],
kwargs={'max_followers': 500},
schedule='daily',
time='09:00'
)
Schedule engagement waves
定时分时段执行互动
scheduler.add_task(
name='Morning Engagement',
function=bot.run_campaign,
schedule='daily',
time='10:00'
)
scheduler.add_task(
name='Evening Engagement',
function=bot.run_campaign,
schedule='daily',
time='18:00'
)
scheduler.start()
undefinedscheduler.add_task(
name='上午互动',
function=bot.run_campaign,
schedule='daily',
time='10:00'
)
scheduler.add_task(
name='下午互动',
function=bot.run_campaign,
schedule='daily',
time='18:00'
)
scheduler.start()
undefinedAPI Rate Limiting & Safety
API速率限制与安全
Implement safe usage patterns:
python
from safety import RateLimiter, ActionThrottler实现安全使用模式:
python
from safety import RateLimiter, ActionThrottlerConfigure rate limits
配置速率限制
limiter = RateLimiter(
max_follows_per_hour=50,
max_likes_per_hour=100,
max_comments_per_hour=30,
max_dms_per_hour=20
)
limiter = RateLimiter(
max_follows_per_hour=50,
max_likes_per_hour=100,
max_comments_per_hour=30,
max_dms_per_hour=20
)
Use throttler in campaigns
在活动中使用节流器
throttler = ActionThrottler(limiter)
def safe_engagement(targets):
for user in targets:
# Check rate limits before action
if throttler.can_follow():
bot.follow_user(user)
throttler.record_action('follow')
if throttler.can_like():
bot.like_recent_posts(user, count=2)
throttler.record_action('like', count=2)
# Random delay to mimic human behavior
throttler.human_delay(min_seconds=10, max_seconds=30)undefinedthrottler = ActionThrottler(limiter)
def safe_engagement(targets):
for user in targets:
# 执行操作前检查速率限制
if throttler.can_follow():
bot.follow_user(user)
throttler.record_action('follow')
if throttler.can_like():
bot.like_recent_posts(user, count=2)
throttler.record_action('like', count=2)
# 随机延迟模拟人类行为
throttler.human_delay(min_seconds=10, max_seconds=30)undefinedTroubleshooting
故障排除
Account Suspension Prevention
账号封禁预防
python
undefinedpython
undefinedUse rotating proxies
使用轮换代理
from proxy_rotator import ProxyPool
proxy_pool = ProxyPool([
'http://proxy1.example.com:8080',
'http://proxy2.example.com:8080',
'http://proxy3.example.com:8080'
])
extractor = FollowerExtractor(
username=os.getenv('INSTAGRAM_USERNAME'),
password=os.getenv('INSTAGRAM_PASSWORD'),
proxy_pool=proxy_pool,
rotate_every_n_requests=50
)
undefinedfrom proxy_rotator import ProxyPool
proxy_pool = ProxyPool([
'http://proxy1.example.com:8080',
'http://proxy2.example.com:8080',
'http://proxy3.example.com:8080'
])
extractor = FollowerExtractor(
username=os.getenv('INSTAGRAM_USERNAME'),
password=os.getenv('INSTAGRAM_PASSWORD'),
proxy_pool=proxy_pool,
rotate_every_n_requests=50
)
undefinedSession Management
会话管理
python
undefinedpython
undefinedHandle session expiration
处理会话过期
try:
followers = extractor.get_followers('target_account')
except SessionExpiredError:
extractor.refresh_session()
followers = extractor.get_followers('target_account')
undefinedtry:
followers = extractor.get_followers('target_account')
except SessionExpiredError:
extractor.refresh_session()
followers = extractor.get_followers('target_account')
undefinedData Export & Integration
数据导出与集成
python
undefinedpython
undefinedExport to multiple formats
导出为多种格式
from exporters import DataExporter
exporter = DataExporter()
from exporters import DataExporter
exporter = DataExporter()
CSV export
CSV导出
exporter.to_csv(leads, 'leads.csv', columns=['username', 'followers', 'email'])
exporter.to_csv(leads, 'leads.csv', columns=['username', 'followers', 'email'])
JSON export
JSON导出
exporter.to_json(leads, 'leads.json')
exporter.to_json(leads, 'leads.json')
CRM integration (example: HubSpot)
CRM集成(示例:HubSpot)
exporter.to_crm(
leads,
crm='hubspot',
api_key=os.getenv('HUBSPOT_API_KEY'),
custom_fields={'lead_source': 'Instagram Competitor Scrape'}
)
undefinedexporter.to_crm(
leads,
crm='hubspot',
api_key=os.getenv('HUBSPOT_API_KEY'),
custom_fields={'lead_source': 'Instagram Competitor Scrape'}
)
undefinedBest Practices
最佳实践
- Always respect platform rate limits to avoid account bans
- Use proxy rotation for large-scale extraction
- Randomize delays between actions (10-60 seconds)
- Store credentials securely in environment variables
- Monitor daily action limits (follows, likes, DMs)
- Test campaigns on small groups before scaling
- Comply with GDPR/privacy laws when collecting user data
- Use multiple accounts to distribute workload
- 始终遵守平台速率限制,避免账号封禁
- 使用代理轮换进行大规模数据提取
- 随机化操作间隔(10-60秒)
- 使用环境变量安全存储凭据
- 监控每日操作上限(关注、点赞、私信)
- 大规模推广前先在小群体测试
- 收集用户数据时遵守GDPR/隐私法规
- 使用多账号分摊工作负载
Support & Documentation
支持与文档
- Official website: https://www.facebook18.com
- Technical guide: https://sites.google.com/view/facebook-script-custom/
- Lead generation docs: https://sites.google.com/view/instagram-keyword-hashtag-lead/
For implementation support, contact the technical team through the official channels listed above.
- 官方网站:https://www.facebook18.com
- 技术指南:https://sites.google.com/view/facebook-script-custom/
- 线索生成文档:https://sites.google.com/view/instagram-keyword-hashtag-lead/
如需实施支持,请通过上述官方渠道联系技术团队。