#!/usr/bin/env python
# -*- coding: utf-8 -*-
#
# This script collects key figure metrics from hagstofan.is

from pynag.Plugins import PluginHelper, ok, unknown
import requests
from BeautifulSoup import BeautifulSoup

url = 'http://hagstofan.is'

p = PluginHelper()
p.parse_arguments()
p.show_legacy = True

tmp = requests.get(url)
html = tmp.content
soup = BeautifulSoup(html, convertEntities=BeautifulSoup.HTML_ENTITIES)

keyfigures_table = soup.find('table', {'class': 'keyfigures_small'})
if not keyfigures_table:
    p.exit(unknown, "Could not find any table with class=keyfigures_small'")
rows = keyfigures_table.findAll('tr')

for row in rows:
    textdata = row.find('td', {'class': 'textdata'})
    numberdata = row.find('td', {'class': 'numberdata'})

    if not textdata or not numberdata:
        continue
    # Get the text content out of the <td> cells
from dateutil.parser import parse
import requests
import sys
import time

from BeautifulSoup import BeautifulSoup
from pynag.Plugins import PluginHelper,ok,warning,critical,unknown

reload(sys)
sys.setdefaultencoding('utf-8')



helper = PluginHelper()
helper.parse_arguments()
helper.show_legacy = True

now = time.time()
url =  'http://hraun.vedur.is/ja/skjalftar/skjlisti.html'
html = requests.get(url).content
soup = BeautifulSoup(html)
tables = soup.findAll('table')
earthquakes = tables[2]
rows = earthquakes.findAll('tr')

header_row = rows.pop(0)
lines = []
recent_earthquakes = 0
major_earthquakes = 0
for row in rows:
  columns = row.findAll('td')
Example #3
0
reload(sys)
sys.setdefaultencoding('utf-8')

from BeautifulSoup import BeautifulSoup
from pynag.Plugins import PluginHelper, ok, warning, critical, unknown

p = PluginHelper()

chars = string.letters + string.digits
randomstring = ''.join([random.choice(chars)
                        for i in xrange(4)])  # avoid cache
default_url = 'http://landspitali.is'
p.parser.add_option('--url', dest='url', default=default_url)
p.parse_arguments()
p.check_all_metrics()
p.show_legacy = True
html = requests.get(p.options.url).content
soup = BeautifulSoup(html)
activitylist = soup.find('div',
                         {'class': 'activityNumbers activityNumbersNew'})
activities = activitylist.findAll('div', recursive=False)

p.add_metric('metrics_found', value=len(activities), warn='0..1')
p.add_summary('%s metrics found on landspitali website' % (len(activities)))

for i in activities:
    metric_name = i.get('class')
    metric_value = i.find('div', {'class': "todaysCount"}).text
    heading = i.find('div', {'class': 'heading'})
    text = i.find('div', {'class': 'todaysText'})
# Graphs all earthquake measures found

from dateutil.parser import parse
import requests
import sys
import time

from BeautifulSoup import BeautifulSoup
from pynag.Plugins import PluginHelper, ok, warning, critical, unknown

reload(sys)
sys.setdefaultencoding('utf-8')

helper = PluginHelper()
helper.parse_arguments()
helper.show_legacy = True

now = time.time()
url = 'http://hraun.vedur.is/ja/skjalftar/skjlisti.html'
html = requests.get(url).content
soup = BeautifulSoup(html)
tables = soup.findAll('table')
earthquakes = tables[2]
rows = earthquakes.findAll('tr')

header_row = rows.pop(0)
lines = []
recent_earthquakes = 0
major_earthquakes = 0
for row in rows:
    columns = row.findAll('td')