Overview
- Skill Key
- acastellana/vpn-rotate-skill
- Author
- acastellana
- Source Repo
- openclaw/skills
- Version
- -
- Source Path
- skills/acastellana/vpn-rotate-skill
- Latest Commit SHA
- 4c66e33e644e949835a94c8b43d411849a323c16
Bypass API rate limits by rotating VPN servers. Works with any OpenVPN-compatible VPN (ProtonVPN, NordVPN, Mullvad, etc.). Automatically rotates to new server every N requests for fresh IPs. Use for high-volume scraping, government APIs, geo-restricted data.
Stars
0
Installs
0
Status
ACTIVE
Visibility
PUBLIC
直接复制以下提示词,发送给你的 AI 助手即可完成安装。
请先检查是否已安装 SkillHub 商店,若未安装,请根据 https://skillhub-1388575217.cos.ap-guangzhou.myqcloud.com/install/skillhub.md 安装 SkillHub 商店,然后安装 vpn-rotate-skill 技能。 若已安装,则直接安装 vpn-rotate-skill 技能。
# VPN Rotate Skill
Rotate VPN servers to bypass API rate limits. Works with any OpenVPN-compatible VPN.
## Setup
### 1. Run Setup Wizard
```bash
./scripts/setup.sh
```
This will:
- Check OpenVPN is installed
- Help you configure your VPN provider
- Set up passwordless sudo
- Test the connection
### 2. Manual Setup
If you prefer manual setup:
```bash
# Install OpenVPN
sudo apt install openvpn
# Create config directory
mkdir -p ~/.vpn/servers
# Download .ovpn files from your VPN provider
# Put them in ~/.vpn/servers/
# Create credentials file
echo "your_username" > ~/.vpn/creds.txt
echo "your_password" >> ~/.vpn/creds.txt
chmod 600 ~/.vpn/creds.txt
# Enable passwordless sudo for openvpn
echo "$USER ALL=(ALL) NOPASSWD: /usr/sbin/openvpn, /usr/bin/killall" | sudo tee /etc/sudoers.d/openvpn
```
## Usage
### Decorator (Recommended)
```python
from scripts.decorator import with_vpn_rotation
@with_vpn_rotation(rotate_every=10, delay=1.0)
def scrape(url):
return requests.get(url).json()
# Automatically rotates VPN every 10 calls
for url in urls:
data = scrape(url)
```
### VPN Class
```python
from scripts.vpn import VPN
vpn = VPN()
# Connect
vpn.connect()
print(vpn.get_ip()) # New IP
# Rotate (disconnect + reconnect to different server)
vpn.rotate()
print(vpn.get_ip()) # Different IP
# Disconnect
vpn.disconnect()
```
### Context Manager
```python
from scripts.vpn import VPN
vpn = VPN()
with vpn.session():
# VPN connected
for url in urls:
vpn.before_request() # Handles rotation
data = requests.get(url).json()
# VPN disconnected
```
### CLI
```bash
python scripts/vpn.py connect
python scripts/vpn.py status
python scripts/vpn.py rotate
python scripts/vpn.py disconnect
python scripts/vpn.py ip
```
## Configuration
### Decorator Options
```python
@with_vpn_rotation(
rotate_every=10, # Rotate after N requests
delay=1.0, # Seconds between requests
config_dir=None, # Override config dir...
# 🔄 VPN Rotate Skill
**Break free from API restrictions. Rotate IPs. Scrape without limits.**
## The Problem
APIs fight back against data collection:
- 🚫 IP blocks after a few requests
- 🚫 Rate limits killing throughput
- 🚫 Geo-restrictions locking you out
## The Solution
Automatically rotate VPN servers to get fresh IPs. Works with **any OpenVPN-compatible VPN**:
- ✅ ProtonVPN
- ✅ NordVPN
- ✅ Mullvad
- ✅ Any provider with .ovpn configs
## Quick Start
```bash
# 1. Setup (interactive)
./scripts/setup.sh
# 2. Use in Python
```
```python
from scripts.decorator import with_vpn_rotation
@with_vpn_rotation(rotate_every=10)
def scrape(url):
return requests.get(url).json()
# Every 10 requests → new server → new IP → no blocks
for url in urls:
data = scrape(url)
```
## How It Works
1. Connects to VPN server via OpenVPN
2. Makes N requests
3. Disconnects, picks new server
4. Reconnects with fresh IP
5. Repeat
## Success Rates
| Rotation | Success Rate | Speed |
|----------|--------------|-------|
| Every 5 requests | 95%+ | Slower |
| Every 10 requests | 90-95% | Medium |
| Every 20 requests | 80-90% | Faster |
## Use Cases
- **Government APIs** — Catastro, court records, public data
- **Real estate** — Idealista, Zillow, property registries
- **E-commerce** — Price monitoring, stock tracking
- **Search engines** — SERP data, rankings
- **Social media** — Profiles, posts, analytics
## Requirements
- Linux with OpenVPN (`apt install openvpn`)
- VPN account with OpenVPN support
- Passwordless sudo for openvpn (setup script handles this)
## Documentation
- [SKILL.md](SKILL.md) — Full API reference
- [providers/](providers/) — Setup guides for specific VPNs
---
*Stop fighting rate limits. Start rotating IPs.*
human-pages-ai
Search and hire real humans for tasks — photography, delivery, research, and more
zseven-w
Reusable skill templates for OpenClaw AI agents. Templates for API integration, data processing, web scraping, CLI tools, and file processing.
ianpcook
Unified search API across Google, Amazon, Yelp, OpenTable, Walmart, and more. Use when searching for products, local businesses, restaurants, shopping, images, news, or any web search. One API key, many engines.
iamvaleriofantozzi
Control Home Assistant smart home devices, lights, scenes, and automations via moltbot-ha CLI with configurable safety confirmations.
ianwchoi
DuckDuckGo Websearch Skill
ibrahimq21
Ravenclaw Operations Skill