(Works on websites which don't need login/authentication)
This tool automates the process of extracting .m3u8 URLs from live stream pages.
It uses Selenium + Chrome DevTools Protocol (CDP) in a GitHub Actions workflow to capture stream URLs directly from the given page.
You can then play these extracted URLs with your preferred HLS Player (e.g., VLC).
(After forking the repo) You can trigger the Fetch Stream URL workflow manually from the Actions page in your GitHub repository.
After refreshing, Extracted Output Example

-
Fork this repository
-
Run the Workflow Manually
- Go to the Actions tab of your repo.
- Select Fetch Stream URL workflow.
- Click on Run workflow.
- By default, the script uses:
If you want to target another URL, set the
https://news.abplive.com/live-tvTARGET_URLenvironment variable when running.
-
View Results
- After ~30 seconds, the workflow will complete.
- Extracted URLs will appear:
- In the workflow logs (
Found .m3u8 URL:messages).
- In the workflow logs (
-
Selenium (Python)
- Controls a headless Chrome browser.
- Uses Chrome DevTools Protocol (CDP) to listen to network traffic and responses.
-
Chrome DevTools Protocol (CDP)
- Captures
.m3u8requests from both network requests and response bodies. - Provides fast and accurate detection of streaming URLs.
- Captures
-
GitHub Actions Workflow
- Runs in GitHubโs cloud environment.
- Automatically installs dependencies (
selenium,webdriver-manager, etc.). - Allows users to trigger scraping with one click.
- This tool is provided for educational purposes.
- Works only on websites that do not require login/authentication.
- Always ensure you comply with the siteโs terms of service before scraping.
