wrapper for the fleetmon.com ship tracking API
Python Makefile
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
fleetmonger
tests
.gitignore
LICENSE
MANIFEST.in
Makefile
readme.md
setup.py

readme.md

Fleetmonger

Python wrapper for the fleetmon.com ship-tracking API.

API Calls

Read the details of the API at Fleetmonger.

  • fleetmonger.myfleet
  • fleetmonger.vessel
  • fleetmonger.vesselparticulars
  • fleetmonger.vesselurl
  • fleetmonger.porturl
  • fleetmonger.weather
  • fleetmonger.containerschedule

Note that some API calls require the purchase of credits at Fleetmon. This package is unaffiliated with Fleetmon, use at your own risk.

Usage

from fleetmonger import Fleetmonger

fm = Fleetmonger('username', 'your key')

fleet = fm.myfleet()

for ship in fleet:
    print ship.name, ship.destination

Vessels

my_vessel = fleet[0]
# or
my_vessel = fm.vessel(mmsi='239725000')
# or
my_vessel = fm.vessel(imo='9197545')
# or
my_vessel = fm.vessel(name='MINNOW')

# Passing incomplete information will raise an error
my_vessel = fm.vessel()
# ValueError

my_vessel.name
# <SS MINNOW>

my_vessel.navigationstatus
# 'On a three hour tour'

my_vessel.etatime
# datetime.datetime(1964, 9, 26, 12, 0, tzinfo=<UTC>)

my_vessel.coords
# (3.469557, -167.255859)

# Missing attributes return None
my_vessel.location
# None

my_vessel.flag
# 'United States'

my_vessel.flag_so
# 'US'

# Some vessels have photos
myvessel.photos
# ["//img1.fleetmon.com/thumbnails/MINNOW_1.220x146.jpg", "//img1.fleetmon.com/thumbnails/MINNOW_2.570x1140.jpg"]

Minimum list of Vessel attributes:

coords (lat, lon), course, destination, draught, etatime, flag, heading, imo, last_port, latitude, location, longitude, mmsi, name, navigationstatus, photos, positionreceived, publicurl, speed, type

Ports

my_vessel.last_port
# <fleetmonger.port.Port object>

port = my_vessel.last_port

port.name
# 'Honolulu, HI'

port.duration
# datetime.timedelta(...)

Port urls and Vessel urls

Pass mmsi, imo or name to vessel methods. Pass locode or name to port methods.

fm.vesselurl(name='MINNOW')

fm.porturl(locode='USLAX')

# Porturl also takes an optional country isocode parameter 
fm.porturl(name='new', country='US')
# [<Newark (New York)>, <Newburgh>, <Newburyport>, <Newport (OR)>]

Weather at Location

fm.weather(lat=3.469557, lon=-167.255859)

# You can also pass a vessel object to the weather call
fm.weather(vessel=my_vessel)

Parameters

In general, the parameters that Fleetmonger expects match those of the Fleetmon API, with the following exceptions:

instead of mmsinumber, use mmsi
...        imonumber   ... imo
...        q           ... name