Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env python
- import requests
- from bs4 import BeautifulSoup
- import re
- def get_soup(spot_id):
- url = 'http://www.ndbc.noaa.gov/station_page.php?station='+spot_id
- html_doc = (requests.get(url)).text
- soup = BeautifulSoup(html_doc, 'html.parser')
- return soup
- def get_height(soup):
- text = soup.get_text()
- m = re.search(r"\(WVHT\)\:\n (\d+.\d+) ft", text)
- height = m.group(1)
- return height
- def get_period(soup):
- text = soup.get_text()
- m = re.search(r"\(DPD\)\:\n (\d+) sec", text)
- period = m.group(1)
- return period
- def get_direction(soup):
- text = soup.get_text()
- m = re.search(r"\(MWD\)\:\n(\w+) \( (\d+) deg", text)
- direction = m.group(1)
- return direction
- def get_degrees(soup):
- text = soup.get_text()
- m = re.search(r"\(MWD\)\:\n(\w+) \( (\d+) deg", text)
- degrees = m.group(2)
- return degrees
- def get_time(soup):
- text = soup.get_text()
- m = re.search(r"Conditions at \d+ as of\((\d+:\d+ \w+) \w+\)", text)
- time = m.group(1)
- return time
- def main():
- id = '46225'
- print 'height: ' + get_height(get_soup(id)) + '\nperiod: ' +get_period(get_soup(id)) + "\ndirection: "+get_direction(get_soup(id)) + "\ndegrees: " + get_degrees(get_soup(id)) + "\ntime: " + get_time(get_soup(id))
- if __name__ == '__main__':
- main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement