从澳大利亚气象局检索气象数据

bomshell的Python项目详细描述


Documentation Status

bomshell用于从Australian Bureau of Meteorology’s (BOM)检索天气数据 公开ftpsite,并将结果显示在shell中,它所属的位置,正如上帝所希望的那样。 不是孩子们都喜欢的那种愚蠢的网络小丑装。

bomshell从公共ftp站点检索空间数据并将其打包到本地数据库中。工具提供给 建立和维护本地数据库。可以对数据库和空间数据库文件进行查询。随着工具的成熟 空间数据库将用于确定用户感兴趣的报表和那些特定产品的产品id 从bom的公共ftp站点下载。

安装

pip install bomshell

示例用法

所有bomshell命令行选项都可以从--help选项中使用

$ bomshell
Usage: bomshell [OPTIONS] COMMAND [ARGS]...

  Retrieve weather data from the Australian Bureau of Meteorology

Options:
  --version              Show the version and exit.
  -v, --verbose          Level of verbosity of logs
  -c, --cache-path PATH  BOM data cache path, Default:
                         /home/thys/.cache/bomshell
  --help                 Show this message and exit.

Commands:
  spatial  Spatial database management

子命令的选项也可以在子命令上使用--help

为了知道bom称某个特定产品为什么,您需要找出 产品ID是什么。这可以从空间数据库中获得。bomshell 下载当前空间数据并将其打包到方便的本地数据库中 除其他外,还可以查询产品ID。

可以同步本地空间数据库,或者根据需要重新构建。

$ bomshell spatial
Usage: bomshell spatial [OPTIONS] COMMAND [ARGS]...

  Spatial database management

Options:
  -o, --overwrite / --no-overwrite
                                  Overwrite existing spatial data, default is:
                                  False
  --help                          Show this message and exit.

Commands:
  build      Build the local spatial database
  csvdump    Dump spatial data to csv
  fetch      Fetch spatial data
  sync       Sync the local spatial data, overwriting...
  tabledump  Dump spatial data to table

所有空间数据都可以打印到格式良好的表中。有许多输出格式可用。

$ bomshell spatial tabledump --help
Usage: bomshell spatial tabledump [OPTIONS]

  Dump spatial data to table

Options:
  -s, --spatial-type [cyclone_areas|fire_districts|forecast_districts|high_sea_areas|marine_zones|metros|ocean_wind_warning|point_places|radar_coverage|radar_location|rainfall_districts]
                                  choose a spatial type
  -f, --table-format [fancy_grid|grid|html|jira|latex|latex_booktabs|mediawiki|moinmoin|orgtbl|pipe|plain|psql|rst|simple|textile|tsv]
                                  choose a table type
  --help                          Show this message and exit.

示例

$ bomshell spatial tabledump --spatial-type radar_coverage --table-format rst

下表中的结果:

NameRADAR_IDLONGITUDELATITUDEFULL_NAMEIDRNN0NAMEIDRNN1NAMESTATETYPEGROUPSTATUSARCHIVE
South Doodlakine58117.953-31.777South DoodlakineSthDoodSthDoodlakineWADopplerYesPublicSthDood
Weipa18141.925-12.666WeipaWeipaWeipaQLDDopplerYesPublicWeipa
Sydney71151.209-33.7008Sydney (Terrey Hills)TerreyHillsTerreyHillsNSWDopplerYesPublicT_Hills
Adelaide64138.469-34.6169Adelaide (Buckland Park)BuckPkBucklandPkSADopplerYesPublicBuckPk
Alice Springs25133.888-23.796Alice SpringsAliceSpAliceSpringsNTPart-time windfindingYesPublicAliceSp
Brisbane66153.24-27.7178Brisbane (Mt Stapylton)MtStaplMtStapyltonQLDDopplerYesPublicMtStapl
Broome17122.235-17.9483BroomeBroomeBroomeWAPart-time windfindingYesPublicBroome
Cairns19145.683-16.817CairnsCairnsCairnsQLDDopplerYesPublicCairns
Carnarvon5113.669-24.8878CarnarvonCarnvnCarnarvonWADedicated weather watchYesPublicCarnvn
Ceduna33133.696-32.1298CedunaCedunaCedunaSADedicated weather watchYesPublicCeduna
Dampier15116.687-20.65DampierDampierDampierWADedicated weather watchYesPublicDampier
Darwin63130.925-12.457Darwin (Berrimah)BerrimaDarwinNTDopplerYesPublicBerrima
Esperance32121.892-33.8303EsperanceEsprnceEsperanceWAPart-time windfindingYesPublicEsprnce
Mt Gambier14140.775-37.7477Mount GambierGambierMtGambierSADedicated weather watchYesPublicGambier
Geraldton6114.697-28.8044GeraldtonGerltonGeraldtonWAPart-time windfindingYesPublicGerlton
Giles44128.3-25.03GilesGilesGilesWAPart-time windfindingYesPublicGiles
Gladstone23151.263-23.855GladstoneGladstnGladstoneQLDDedicated weather watchYesPublicGladstn
Gove9136.823-12.275GoveGoveGoveNTPart-time windfindingYesPublicGove
Grafton28152.951-29.622GraftonGraftonGraftonNSWDedicated weather watchYesPublicGrafton
Mornington Is36139.167-16.666Mornington Island (Gulf of Carpentaria)GlfCarpGulfCarpNTDedicated weather watchYesPublicGlfCarp
Halls Creek39127.663-18.231Halls CreekHallsCkHallsCreekWAPart-time windfindingYesPublicHallsCk
Port Hedland16118.632-20.3719Port HedlandPtHedlandPtHedlandWADedicated weather watchYesPublicP_Hedld
Hobart Ap37147.501-42.8374Hobart AirportHobartAPHobartAPTASPart-time windfindingYesReg_usersHobrtAP
Gympie8152.577-25.9574Gympie (Mount Kanigan)KanignGympieQLDDopplerYesPublicKanign
Kurnell54151.226-34.0148Sydney (Kurnell)KurnellKurnellNSWDopplerNoReg_usersKurnell
Melbourne2144.755-37.8552Melbourne (Laverton)MelbMelbourneVICDopplerYesPublicMelb
Learmonth29113.999-22.103LearmonthLrmonthLearmonthWADedicated weather watchYesPublicLrmonth
Newcastle4152.025-32.73NewcastleLemnTreNewcasleNSWDopplerYesPublicLemnTre
Wollongong3150.875-34.2625Wollongong (Appin)WollgngWollgngNSWDopplerYesPublicWollgng
Longreach56144.29-23.43LongreachLongrchLongreachQLDPart-time windfindingYesPublicLongrch
Mackay22149.217-21.117MackayMackayMackayQLDDedicated weather watchYesPublicMackay
Marburg50152.539-27.608Brisbane (Marburg)MarburgBrisbaneQLDDedicated weather watchYesPublicMarburg
Mildura30142.086-34.235MilduraMilduraMilduraVICDedicated weather watchYesPublicMildura
Moree53149.85-29.5MoreeMoreeMoreeNSWDedicated weather watchYesPublicMoree
Perth Ap26115.976-31.9273Perth AirportPrthAPPerthAPWAPart-time windfindingNoReg_usersPrthAP
Sellicks Hill46138.5-35.33Adelaide (Sellicks Hill)SellickAdelaideSADedicated weather watchYesPublicSellick
Katherine42132.446-14.513Katherine (Tindal)TindalTindalNTDedicated weather watchYesPublicTindal
Wagga Wagga55147.467-35.167Wagga WaggaWaggaWaggaNSWPart-time windfindingYesPublicWagga
Willis Is41149.965-16.2874Willis IslandWillisWillisIsQLDPart-time windfindingYesPublicWillis
Woomera27136.803-31.157WoomeraWoomeraWoomeraSADedicated weather watchYesPublicWoomera
NW Tasmania52145.579-41.181NW Tasmania (West Takone)WTakoneNW-TasTASDedicated weather watchYesPublicWTakone
Wyndham7128.119-15.453WyndhamWyndhamWyndhamWADedicated weather watchYesPublicWyndham
Yarrawonga49146.023-36.0297YarrawongaNE-VicYarrawongaVICDopplerYesPublicNE_Vic
Canberra40149.512-35.6614Canberra (Captains Flat)CapFlatCaptFlatNSWDopplerYesPublicCapFlat
Norfolk Is62167.933-29.033Norfolk IslandNorfolkNorfolkIsNSWPart-time windfindingYesPublicNorfolk
Bowen24148.075-19.886BowenBowenBowenQLDDedicated weather watchYesPublicBowen
Warrego67147.349-26.44WarregoWarregoWarregoQLDDedicated weather watchYesPublicWarrego
Bairnsdale68147.576-37.8876BairnsdaleBnsdaleBairnsdaleVICDedicated weather watchYesPublicBnsdale
Darwin Ap10130.892-12.4247Darwin AirportDarwinDarwinAPNTPart-time windfindingNoReg_usersDarwin
Melbourne Ap51144.831-37.6656Melbourne AirportMelbnAPTullaAPVICPart-time windfindingNoReg_usersMelbnAP
Emerald72148.239-23.5498EmeraldEmeraldEmeraldQLDDopplerYesPublicEmerald
Perth70115.867-32.3917Perth (Serpentine)SerptinSerpentineWADopplerYesPublicSerptin
Namoi69150.192-31.0236Namoi (Blackjack Mountain)NamoiNamoiNSWDopplerYesPublicNamoi
Townsville73146.551-19.4198Townsville (Hervey Range)HrvyRngHrvyRngQLDDopplerYesPublicHrvyRng
Hobart76147.806-43.1122Hobart (Mt Koonya)MtKoonyaMtKoonyaTASDopplerYesPublicKoonya
Albany31117.816-34.9418AlbanyAlbanyAlbanyWAPart-time windfindingYesPublicAlbany
Mt Isa75139.555-20.7112Mount IsaMnt_IsaMnt_IsaQLDDopplerYesPublicMnt_Isa
Warruwi77133.38-11.6485WarruwiArafuraArafuraNTDopplerYesPublicArafura
Kalgoorlie48121.455-30.7834KalgoorlieK/grlieKalgoorlieWADopplerYesPublicK/grlie
Newdegate38119.009-33.097NewdegateNdegateNewdegateWADopplerYesPublicNdegate

对数据库进行查询时需要指定空间数据类型。

bomshell spatial tabledump --spatial-type forecast_districts --table-format fancy_grid

╒═══════════╤═══════════╤════════════════════════════════════════╤══════════════╤══════════════════════════╕
│ AAC       │   DIST_NO │ DIST_NAME                              │ STATE_CODE   │ GROUP_NAME               │
╞═══════════╪═══════════╪════════════════════════════════════════╪══════════════╪══════════════════════════╡
│ NSW_PW001 │         1 │ Northern Rivers                        │ NSW          │                          │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ NSW_PW002 │         2 │ Mid North Coast                        │ NSW          │                          │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ NSW_PW003 │         3 │ Hunter                                 │ NSW          │                          │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ NT_PW009  │         9 │ Tanami                                 │ NT           │                          │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ QLD_PW001 │         1 │ Peninsula                              │ QLD          │ Northern Districts       │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ QLD_PW002 │         2 │ Gulf Country                           │ QLD          │ Northern Districts       │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ QLD_PW003 │         3 │ Northern Goldfields and Upper Flinders │ QLD          │ Northern Districts       │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ QLD_PW004 │         4 │ North Tropical Coast and Tablelands    │ QLD          │ Northern Districts       │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ QLD_PW005 │         5 │ Herbert and Lower Burdekin             │ QLD          │ Northern Districts       │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ QLD_PW006 │         6 │ Central Coast and Whitsundays          │ QLD          │ Central Districts        │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ QLD_PW007 │         7 │ Capricornia                            │ QLD          │ Central Districts        │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ QLD_PW008 │         8 │ Central Highlands and Coalfields       │ QLD          │ Central Districts        │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ QLD_PW009 │         9 │ Central West                           │ QLD          │ Western Districts        │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ QLD_PW010 │        10 │ North West                             │ QLD          │ Western Districts        │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ QLD_PW011 │        11 │ Channel Country                        │ QLD          │ Western Districts        │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ QLD_PW012 │        12 │ Maranoa and Warrego                    │ QLD          │ Western Districts        │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ QLD_PW013 │        13 │ Darling Downs and Granite Belt         │ QLD          │ Southeast Districts      │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ QLD_PW014 │        14 │ Wide Bay and Burnett                   │ QLD          │ Southeast Districts      │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ QLD_PW015 │        15 │ Southeast Coast                        │ QLD          │ Southeast Districts      │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ SA_PW001  │         1 │ Adelaide Metropolitan                  │ SA           │                          │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ SA_PW002  │         2 │ Yorke Peninsula                        │ SA           │                          │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ SA_PW003  │         3 │ Kangaroo Island                        │ SA           │                          │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ SA_PW004  │         4 │ Upper South East                       │ SA           │                          │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ VIC_PW001 │         1 │ Mallee                                 │ VIC          │                          │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ VIC_PW002 │         2 │ Wimmera                                │ VIC          │                          │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ VIC_PW003 │         3 │ Northern Country                       │ VIC          │                          │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ VIC_PW004 │         4 │ North East                             │ VIC          │                          │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ VIC_PW005 │         5 │ East Gippsland                         │ VIC          │                          │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ VIC_PW006 │         6 │ West and South Gippsland               │ VIC          │                          │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ VIC_PW007 │         7 │ Central                                │ VIC          │                          │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ VIC_PW008 │         8 │ North Central                          │ VIC          │                          │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ VIC_PW009 │         9 │ South West                             │ VIC          │                          │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ WA_PW001  │         1 │ Kimberley                              │ WA           │ Mining and Pastoral      │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ WA_PW002  │         2 │ Pilbara                                │ WA           │ Mining and Pastoral      │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ WA_PW003  │         3 │ Gascoyne                               │ WA           │ Mining and Pastoral      │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ WA_PW004  │         4 │ Goldfields                             │ WA           │ Mining and Pastoral      │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ WA_PW005  │         5 │ Eucla                                  │ WA           │ Mining and Pastoral      │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ WA_PW006  │         6 │ North Interior                         │ WA           │ Mining and Pastoral      │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ WA_PW007  │         7 │ South Interior                         │ WA           │ Mining and Pastoral      │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ WA_PW008  │         8 │ Central West                           │ WA           │ South West Land Division │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ WA_PW009  │         9 │ Lower West                             │ WA           │ South West Land Division │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ WA_PW010  │        10 │ South West                             │ WA           │ South West Land Division │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ WA_PW011  │        11 │ South Coastal                          │ WA           │ South West Land Division │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ WA_PW012  │        12 │ South East Coastal                     │ WA           │ South West Land Division │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ WA_PW013  │        13 │ Great Southern                         │ WA           │ South West Land Division │
├───────────┼───────────┼────────────────────────────────────────┼──────────────┼──────────────────────────┤
│ WA_PW014  │        14 │ Central Wheat Belt                     │ WA           │ South West Land Division │
╘═══════════╧═══════════╧════════════════════════════════════════╧══════════════╧══════════════════════════╛

版本控制

当前版本是1.1.0

更改日志

0.1.0(2017-04-22)

  • pypi上的第一个版本。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何在没有代码气味的情况下编写遵循Liskov替代和其他可靠原则的不可变映射?   java最新jre上的压缩字符串对旧编译代码有好处吗?   java是否可以在javascript中取消PrimeFaces menuitem onclick函数   mysql从SQL数据库中访问java中xml名称空间标记的值   从java程序打开excel文件   java在方法中使用“var”是否会使执行(并发)线程不安全?   java使搜索视图以一种关于AndroidManifest的通用方式可用。xml   java对如何准确使用正则表达式感到困惑?   mule如何访问java文件中的记录变量   java在从2D数组引发异常后继续   枚举当前设置为的java值   java当listview只有几个项目时,如何使alert对话框显示listview的所有项目?   java getTableRow()返回大于项大小的索引   c用java传输二进制文件(数据)   java更改多选列表项复选框颜色