/install ctrip-flights
Ctrip Domestic Flight Search
Search domestic flight tickets via Ctrip's API. Provides real-time flight information including prices, airlines, schedules, aircraft types, and low-price calendars.
Prerequisites
Install the required Python package before first use:
pip install quickjs
The skill also requires the _extract/c-sign.js file bundled in the scripts/ directory.
Usage
Run the search script located at scripts/ctrip_flight.py. Both departure and arrival support city names, IATA codes, or province names. When a province is specified, all airports in that province are queried and compared automatically.
python3 scripts/ctrip_flight.py 北京 上海 2026-04-02 --md
python3 scripts/ctrip_flight.py 北京 广东 2026-04-02 --md
python3 scripts/ctrip_flight.py 浙江 云南 2026-04-05 --json
Parameters:
- Arg 1: departure — city name, IATA code, or province name
- Arg 2: arrival — city name, IATA code, or province name
- Arg 3: departure date in
YYYY-MM-DDformat - Arg 4 (optional): cabin —
Y= Economy (default),C= Business,F= First --jsonor-j: output structured JSON--mdor-m: output Markdown tables (default)
When a province is given (e.g. "广东"), the script queries all airport cities in that province (广州, 深圳, 珠海), compares prices across routes, and recommends the cheapest option.
Examples:
python3 scripts/ctrip_flight.py 北京 上海 2026-04-02
python3 scripts/ctrip_flight.py 广州 成都 2026-04-05 C
Programmatic Usage
import sys
sys.path.insert(0, "path/to/ctrip-flight/scripts")
from ctrip_flight import search_to_region, to_json, to_markdown
# Single city or province query — province auto-expands to all airports
result = search_to_region("北京", "广东", "2026-04-02")
# result contains:
# query.isMultiRoute — True if province was used
# routeSummaries — per-route lowest price comparison
# bestRoute — the cheapest route overall
# allFlights — combined flight list from all routes
md = to_markdown(result)
js = to_json(result)
Supported Locations
Cities: 北京, 上海, 广州, 深圳, 珠海, 成都, 杭州, 温州, 宁波, 武汉, 西安, 重庆, 南京, 天津, 长沙, 三亚, 海口, 昆明, 丽江, 西双版纳, 厦门, 福州, 大连, 沈阳, 青岛, 济南, 哈尔滨, 长春, 郑州, 贵阳, 太原, 兰州, 乌鲁木齐, 南宁, 桂林, 合肥, 南昌
Provinces (auto-expand to all airport cities): 广东(广州/深圳/珠海), 浙江(杭州/温州/宁波), 福建(厦门/福州), 山东(青岛/济南), 辽宁(大连/沈阳), 海南(三亚/海口), 云南(昆明/丽江/西双版纳), 广西(南宁/桂林), 黑龙江, 吉林, 河南, 湖北, 湖南, 江苏, 江西, 安徽, 陕西, 四川, 贵州, 山西, 甘肃, 新疆
Output
Two output formats are supported:
Markdown (--md, default): Renders flight data as Markdown with tables and summary. Ideal for LLM responses and chat display.
JSON (--json): Structured JSON with query, summary, directFlights, transferFlights, and lowPriceCalendar fields. Ideal for downstream processing.
How It Works
The skill reverse-engineered Ctrip's anti-crawl protections:
signheader:MD5(transactionID + cityCode + cityCode + date)w-payload-sourceheader: Ctrip's c-sign.js executed via QuickJS engineFVPcookie: Extracted from server-rendered HTML pagetokenheader: Not required (discovered via testing)
- Make sure OpenClaw is installed (local or Docker)
- Run the install command in chat:
/install ctrip-flights - After installation, invoke the skill by name or use
/ctrip-flights - Provide required inputs per the skill's parameter spec and get structured output
What is 携程机票助手 - ctrip flight?
This skill should be used when the user wants to search for domestic flight tickets in China, query flight prices, find the cheapest flights, compare airline... It is an AI Agent Skill for Claude Code / OpenClaw, with 216 downloads so far.
How do I install 携程机票助手 - ctrip flight?
Run "/install ctrip-flights" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.
Is 携程机票助手 - ctrip flight free?
Yes, 携程机票助手 - ctrip flight is completely free, licensed under MIT-0. You can download, install and use it at no cost.
Which platforms does 携程机票助手 - ctrip flight support?
携程机票助手 - ctrip flight is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).
Who created 携程机票助手 - ctrip flight?
It is built and maintained by hiyu (@hi-yu); the current version is v1.0.0.