A collection of modules I have created to programmatically search for/download imagery from live cam feeds across the state of California.

Overview

california-live-cams

A collection of modules that I have created to programmatically search for/download imagery from all publicly available live cam feeds across the state of California. In no way am I affiliated with any of these organizations and these modules/methods of gathering imagery are completely unofficial.

Initially, I wanted to create a fire-detection engine using Haar-Cascade classifiers but due to each image containing a logo, the project requires further problem-solving. I hope these modules help someone else in the meantime!

Alertwildfire.org

This is a very robust module as it contains search features and a querying system that returns results in a JSON object. Aside from California, AWF also has cams in Oregon, Washington, Idaho, Nevada & Utah.

Note: Each image consistently contains a black footer that contains data. Tesseract-OCR engine flawlessly detects the text in the black bar each time which might be very useful to someone.

Source: alertwildfire.org

Usage:

from awf import *
from PIL import Image

if __name__ == '__main__':

    # Initialize an API-session
    api = AWF()

    # This will keep images after the script has stopped if set to False.
    AWF_GLOBALS.BURN_AFTER_READING = True

    # Note: Downloads are saved to the location "__main__/downloads" by default.

    # Get all cams where "county" == "napa", then download the latest image of each result to our cache.
    print("Starting query...")
    query = api.fetchByProp("county", "napa", download=True)

    # If any results from the query:
    if (len(query)):

        print("Found %s matching cams." % len(query))
        
        for cam in query:
            print("Cam ID:   %s" % cam['properties']['id'])
            print("Location: %s, %s" % (cam['properties']['county'], cam['properties']['state'],))
            Image.open(cam['download']['filename']).show()
            _ = input("Hit enter to continue...")

    # Finally, kill our updater thread as it will be hanging.
    AWF_GLOBALS.exit_thread = True

Preview:



Caltrans & DOT

This is a collection of ALL of the Department Of Transportation's highway cams located in the state of California, in cooperation with Caltrans. While there is also live-video feeds selectively available, I have not added a streaming capability to the module yet but plan to in the near future. I did not add a search/query feature to this module as my main focus is around Wildfire detection.

Source: cwwp2.dot.ca.gov

from cdt import *
from PIL import Image
from os import remove

# Iterate over entire set of cams
while True:
    
    # Get current cams from Caltrans/DOT
    # This will create a file, data.json
    cams = getCams(file=True)

    # Iterate cam results
    for cam in cams:

        # Print the cam info
        print()
        print("City:    %s" % cam['city'])   
        print("County:  %s" % cam['county'])     
        print("Highway: %s" % cam['county'])    
        print("Cam ID:  %s" % cam['cam']['id'])   
        print()

        # Get the latest feed image url
        imageLocation = getCamFromPoster(cam['cam']['poster'])

        # Download the image
        filename = getImage(imageLocation, "test.jpg")

        # Show the image
        im = Image.open(filename)
        im.show()

        _ = input("Hit [enter] to continue...")

        remove(filename)

Preview:



Notes

  • I plan to merge both modules into one centralized module with universal search features.

  • Again, in no way am I affiliated with the above organizations.

  • Rate-limiting has not been an issue with either organization but this doesn't mean we can make a rediculous amount of requests... please be respectful!

  • I'm am open to accepting contribution to these modules and future iterations, just DM me on Twitter.

  • Enjoy!!

Owner
Chad Groom
Full Stack dev with interest in OSINT, AI, language-processing, image-processing & security. Non-Security/OSINT @ceegroom. Available for work🤙
Chad Groom
A python script that discovers hidden YouTube API clients. Just a research project.

YouTube-Internal-Clients A script that discovers hidden internal clients of the YouTube (Innertube) API using bruteforce methods. The script tries cli

David 97 Jan 02, 2023
A scriptable music downloader for Qobuz, Tidal, and Deezer

streamrip A scriptable stream downloader for Qobuz, Tidal, and Deezer. Features Downloads tracks, albums, playlists, discographies, and labels from Qo

967 Jan 03, 2023
Easily download audio described movies and TV shows found on audiovault.net

AudioVault Downloader A convenient downloader for audio described movies and TV shows found on the Audio Vault. get latest binary release for Windows

Carter Temm 5 Feb 10, 2022
This project is helps to download contents from Streamtape by utilizing the API

It scrapes Streamtape api and download contents from the site.

Debiprasad Das 5 Dec 28, 2022
抖音去水印视频批量下载,完全使用抖音官方接口

TikTokDownload 抖音去水印视频下载,使用抖音官方接口 使用教程(Win7) Win10环境暂时没测,bug情况应该比Win7少 运行软件前先打开目录下 conf.ini 文件按照要求进行配置 批量下载可直接修改配置文件,单一视频下载请直接打开粘贴视频链接即可

JohnserfSeed 2k Jan 04, 2023
A tool to download program information from Bugcrowd, for use by researchers to compare programs they are eligible to participate in

Description bcstats is a tool which allows Bugcrowd researchers to download information about all accessible programs (public and private) into a sing

19 Oct 13, 2022
Command-line program to download videos from YouTube.com and other video sites

youtube-dl - download videos from youtube.com or other video platforms

youtube-dl 116.4k Jan 07, 2023
Python script to automate youtube-dl downloads

Automated Download Tool !! Project status I am writing a new version of this program, which will solve several errors. The new version only supports G

Devil64-Dev 21 Sep 22, 2022
利用python3,爬取并下载91porn网站上面的视频

91porn_python 利用python3,爬取并下载91porn网站上面的视频 增加爬取t66y论坛图片的脚本 该脚本支持一下功能: 支持多线程 下载视频有进度条显示 支持从特定页的特定视频开始下载 将m3u8和mp4格式的视频下载到不同文件夹,加以分类 自动过滤已经下载过的视频

253 Feb 23, 2021
Mobile based API for Crunchyroll BETA (and Downloader).

Mobile based API for Crunchyroll BETA (and Downloader). Not restricted on servers and NO CLOUDFLARE

27 Dec 11, 2022
Download all games from a public Itch.io Game Jam

Itch Jam Downloader Downloads all games from a public Itch.io Game Jam. What you'll need: Python 3.8+ pip install -r requirements.txt For site mirrori

Dragoon Aethis 19 Dec 07, 2022
Python code to crawl computer vision papers from top CV conferences. Currently it supports CVPR, ICCV, ECCV, NeurIPS, ICML, ICLR, SIGGRAPH

Python code to crawl computer vision papers from top CV conferences. Currently it supports CVPR, ICCV, ECCV, NeurIPS, ICML, ICLR, SIGGRAPH. It leverages selenium, a website testing framework to crawl

Xiaoyang Huang 39 Nov 21, 2022
Youtube videos and channels scraper python wrapper!

YouTubeCrawle Wrapper for python Why This wrapper? This is wrapper is not limited to videos only it can scrape both channel and videos seperately ;D

Kei 16 Aug 08, 2022
YouTube Video publisher using youtube-dl & ROS2🐢

YouTube-publisher-ROS2 Publish sensor_msgs/Image by "YouTube" 🤗 🤗 🤗 ! You don't have to use webcamera or your video to check demos. Purpose Quick d

Ar-Ray 5 Dec 04, 2022
Python Program that downloads gaming required packages based on your Linux Distribution.

LibreGaming Python Program that downloads gaming required packages based on your Linux Distribution. Table of contents Distributions Prerequisites Dep

Ahmed Al Balochi 195 Jan 01, 2023
QGIS plugin to dwonload DEMs from OpenTopography.org

OpenTopography-DEM-Downloader-qgis-plugin QGIS plugin to dwonload DEMs from OpenTopography.org This plug-in allows you to download DEMs from OpenTopgr

Kyaw Naing Win 7 Sep 20, 2022
A toolkit to automatically crawl the paper list and download paper pdfs of ACL Ahthology.

ACL-Anthology-Crawler A toolkit to automatically crawl the paper list and download paper pdfs of ACL Anthology

Ray GG 9 Oct 09, 2022
Ripurei is a free-to-use osu! replay downloader, that can be configured to download from any osu! server.

Ripurei Ripurei is a fully functional osu! replay downloader, fully capable of downloading from almost any osu! server. Functionality Timeline ✔️ Able

Thomas 0 Feb 11, 2022
Download any video from YouTube playlists

youtube-dl Download any videos from YouTube playlists. Requirements Python 3 BeautifulSoup4 PyQt PyQtWebEngine pytube pyyoutube python-decouple Usage

Antonio Fortin 1 Oct 26, 2021
Write reproducible code for getting and processing ChEMBL

chembl_downloader Don't worry about downloading/extracting ChEMBL or versioning - just use chembl_downloader to write code that knows how to download

Charles Tapley Hoyt 34 Dec 25, 2022