Skip to content

Instantly share code, notes, and snippets.

@mamacneil
Created October 24, 2018 11:13
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mamacneil/6bd9c2c4a0d582c9de77a66dddfa25ce to your computer and use it in GitHub Desktop.
Save mamacneil/6bd9c2c4a0d582c9de77a66dddfa25ce to your computer and use it in GitHub Desktop.
Lecture 8 - HTMLing
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {
"collapsed": true
},
"source": [
"# Lecture 8 - HTMLing\n",
"\n",
"There are two major ways that people get data off the internet. The first, is through something called an API (an [Application Programming Interface](https://en.wikipedia.org/wiki/Application_programming_interface)), which in this case is a server application that responds to requests made for information over the web (any kind of program can be an API). Data serving API's can be connected to through the `httr` package, which will allow R to communicate with a server directly, using standardized language that allows information to pass **easily** (maybe) into your R environment. \n",
"\n",
"A useful video for connecting to an API data source is provided here by the RStudio crowd: https://www.rstudio.com/resources/webinars/extracting-data-from-the-web-part-1/\n",
"\n",
"Web-scraping on the other hand, is the brute-force way of getting data off the web and relies on lower-level interaction with `html` code to get at the information you want."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### html\n",
"\n",
"Hyptertext Markup Language (HTML) is the programming language that dominates the face of the web. Invented by [Sir Tim Berners-Lee](https://en.wikipedia.org/wiki/Tim_Berners-Lee) at [CERN](https://en.wikipedia.org/wiki/CERN) - the Conseil européen pour la recherche nucléaire - in Geneva, HTML consists of a series of markup tags (hence the name \"markdown,\" in contrast) that define the structure of how webpages should look. \n",
"\n",
"HTML tags typically come in opening and closing pairs, differentiated by a backslash:\n",
"\n",
"```\n",
"<head>\n",
"\n",
"</head>\n",
"\n",
"```\n",
"\n",
"These can be then nested to produce a full (simple) document:\n",
"\n",
"\n",
"```\n",
"<!DOCTYPE html>\n",
"<html>\n",
" <head>\n",
" <title>This is a title</title>\n",
" </head>\n",
" <body>\n",
" <p>Hello world!</p>\n",
" </body>\n",
"</html>\n",
"```\n",
"\n",
"Which would look like:\n",
"\n",
"\n",
"Hello world!"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Not deeply thrilling but you get the idea. \n",
"\n",
"\n",
"**NB** A useful video from the same RStudio folks for web-scraping: https://www.rstudio.com/resources/webinars/extracting-data-from-the-web-part-2/"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Standard HTML tags\n",
"\n",
"While there are many more html tags, a few key ones that define most webpage content include:\n",
"\n",
"| tag | meaning|\n",
"|:---------:|:---------:|\n",
"| `<a>` | A hyperlink |\n",
"| `<body>` | The document body (main content) |\n",
"| `<code>` | Defines computer code |\n",
"| `<dd>` | A description of a term in a list |\n",
"| `<div>` | Divides a section in a document |\n",
"| `<em>` | Emphasized text |\n",
"| `<head>` | Defines information about the document |\n",
"| `<img>` | Defines and image |\n",
"| `<ol>` | An ordered list |\n",
"| `<p>` | A paragraph |\n",
"| `<q>` | A short quotation |\n",
"| `<table>` | Defines a table |\n",
"| `<tr>` | Defines a row in a table |\n",
"| `<ul>` | An unordered list |\n",
"\n",
"\n",
"The full list is here: [HTML tags](https://www.w3schools.com/tags/). When we look at the `page source` for a webpage, what is typically returned in a new browser window is the full `html` code for a given page. This is typically a **lot** to wade through, so can we do better?\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Webpage scraping - static(ish) data\n",
"\n",
"Some data on the web exists in relatively stable tables that change only infrequently. These kinds of data can be accessed once and processed for subsequent use but dividing up their associated `html` tags.\n",
"\n",
"Figuring out what tags we actualy want without having to scroll through `html` is a huge blessing. Thankfully the `rvest` package we installed last week has some information on this for us:"
]
},
{
"cell_type": "code",
"execution_count": 62,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"library(rvest)\n",
"library(dplyr)"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {},
"outputs": [
{
"data": {},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"vignette(\"selectorgadget\")"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# Grab webpage\n",
"mlb_batting2 = read_html(\"https://www.baseball-reference.com/leagues/MLB/2017-standard-batting.shtml\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"We can use `selectorgadget` - a java scriplet - to interrogate the various aspects of a webpage to find the content we might be looking for:\n",
"\n",
"** stuff happens **"
]
},
{
"cell_type": "code",
"execution_count": 46,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"{xml_nodeset (1)}\n",
"[1] <body class=\"br\">\\n\\n<div id=\"wrap\">\\n <div id=\"header\" role=\"banner\">\\n ..."
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# Pipe in selector\n",
"mlb_batting2 %>% html_nodes('body')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"In this dataset the table tag seems like a good candidate:"
]
},
{
"cell_type": "code",
"execution_count": 66,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<table>\n",
"<thead><tr><th scope=col>Tm</th><th scope=col>#Bat</th><th scope=col>BatAge</th><th scope=col>R/G</th><th scope=col>G</th><th scope=col>PA</th><th scope=col>AB</th><th scope=col>R</th><th scope=col>H</th><th scope=col>2B</th><th scope=col>⋯</th><th scope=col>SLG</th><th scope=col>OPS</th><th scope=col>OPS+</th><th scope=col>TB</th><th scope=col>GDP</th><th scope=col>HBP</th><th scope=col>SH</th><th scope=col>SF</th><th scope=col>IBB</th><th scope=col>LOB</th></tr></thead>\n",
"<tbody>\n",
"\t<tr><td>ARI </td><td>45 </td><td>28.3 </td><td>5.01 </td><td>162 </td><td>6224 </td><td>5525 </td><td>812 </td><td>1405 </td><td>314 </td><td>⋯ </td><td>.445 </td><td>.774 </td><td>94 </td><td>2457 </td><td>106 </td><td>54 </td><td>39 </td><td>27 </td><td>44 </td><td>1118 </td></tr>\n",
"\t<tr><td>ATL </td><td>49 </td><td>28.7 </td><td>4.52 </td><td>162 </td><td>6216 </td><td>5584 </td><td>732 </td><td>1467 </td><td>289 </td><td>⋯ </td><td>.412 </td><td>.738 </td><td>92 </td><td>2303 </td><td>137 </td><td>66 </td><td>59 </td><td>32 </td><td>57 </td><td>1127 </td></tr>\n",
"\t<tr><td>BAL </td><td>50 </td><td>28.6 </td><td>4.59 </td><td>162 </td><td>6140 </td><td>5650 </td><td>743 </td><td>1469 </td><td>269 </td><td>⋯ </td><td>.435 </td><td>.747 </td><td>100 </td><td>2458 </td><td>138 </td><td>50 </td><td>10 </td><td>37 </td><td>12 </td><td>1041 </td></tr>\n",
"\t<tr><td>BOS </td><td>49 </td><td>27.3 </td><td>4.85 </td><td>162 </td><td>6338 </td><td>5669 </td><td>785 </td><td>1461 </td><td>302 </td><td>⋯ </td><td>.407 </td><td>.736 </td><td>92 </td><td>2305 </td><td>141 </td><td>53 </td><td>9 </td><td>36 </td><td>48 </td><td>1134 </td></tr>\n",
"\t<tr><td>CHC </td><td>47 </td><td>27.1 </td><td>5.07 </td><td>162 </td><td>6283 </td><td>5496 </td><td>822 </td><td>1402 </td><td>274 </td><td>⋯ </td><td>.437 </td><td>.775 </td><td>99 </td><td>2403 </td><td>134 </td><td>82 </td><td>48 </td><td>32 </td><td>54 </td><td>1147 </td></tr>\n",
"\t<tr><td>CHW </td><td>51 </td><td>26.7 </td><td>4.36 </td><td>162 </td><td>6059 </td><td>5513 </td><td>706 </td><td>1412 </td><td>256 </td><td>⋯ </td><td>.417 </td><td>.731 </td><td>96 </td><td>2300 </td><td>124 </td><td>76 </td><td>35 </td><td>33 </td><td>17 </td><td>1055 </td></tr>\n",
"\t<tr><td>CIN </td><td>47 </td><td>27.1 </td><td>4.65 </td><td>162 </td><td>6213 </td><td>5484 </td><td>753 </td><td>1390 </td><td>249 </td><td>⋯ </td><td>.433 </td><td>.761 </td><td>97 </td><td>2372 </td><td>116 </td><td>72 </td><td>50 </td><td>42 </td><td>41 </td><td>1135 </td></tr>\n",
"\t<tr><td>CLE </td><td>41 </td><td>28.0 </td><td>5.05 </td><td>162 </td><td>6234 </td><td>5511 </td><td>818 </td><td>1449 </td><td>333 </td><td>⋯ </td><td>.449 </td><td>.788 </td><td>104 </td><td>2476 </td><td>125 </td><td>50 </td><td>23 </td><td>45 </td><td>30 </td><td>1158 </td></tr>\n",
"\t<tr><td>COL </td><td>41 </td><td>28.3 </td><td>5.09 </td><td>162 </td><td>6201 </td><td>5534 </td><td>824 </td><td>1510 </td><td>293 </td><td>⋯ </td><td>.444 </td><td>.781 </td><td>90 </td><td>2455 </td><td>143 </td><td>44 </td><td>62 </td><td>41 </td><td>46 </td><td>1088 </td></tr>\n",
"\t<tr><td>DET </td><td>49 </td><td>29.6 </td><td>4.54 </td><td>162 </td><td>6150 </td><td>5556 </td><td>735 </td><td>1435 </td><td>289 </td><td>⋯ </td><td>.424 </td><td>.748 </td><td>98 </td><td>2355 </td><td>128 </td><td>52 </td><td>11 </td><td>27 </td><td>21 </td><td>1104 </td></tr>\n",
"\t<tr><td>HOU </td><td>46 </td><td>28.8 </td><td>5.53 </td><td>162 </td><td>6271 </td><td>5611 </td><td>896 </td><td>1581 </td><td>346 </td><td>⋯ </td><td>.478 </td><td>.823 </td><td>123 </td><td>2681 </td><td>139 </td><td>70 </td><td>11 </td><td>61 </td><td>27 </td><td>1094 </td></tr>\n",
"\t<tr><td>KCR </td><td>49 </td><td>28.9 </td><td>4.33 </td><td>162 </td><td>6027 </td><td>5536 </td><td>702 </td><td>1436 </td><td>260 </td><td>⋯ </td><td>.420 </td><td>.731 </td><td>93 </td><td>2323 </td><td>160 </td><td>45 </td><td>17 </td><td>37 </td><td>19 </td><td>1005 </td></tr>\n",
"\t<tr><td>LAA </td><td>55 </td><td>30.0 </td><td>4.38 </td><td>162 </td><td>6073 </td><td>5415 </td><td>710 </td><td>1314 </td><td>251 </td><td>⋯ </td><td>.397 </td><td>.712 </td><td>92 </td><td>2151 </td><td>141 </td><td>70 </td><td>17 </td><td>46 </td><td>30 </td><td>1033 </td></tr>\n",
"\t<tr><td>LAD </td><td>52 </td><td>27.9 </td><td>4.75 </td><td>162 </td><td>6191 </td><td>5408 </td><td>770 </td><td>1347 </td><td>312 </td><td>⋯ </td><td>.437 </td><td>.771 </td><td>104 </td><td>2362 </td><td>119 </td><td>64 </td><td>31 </td><td>38 </td><td>41 </td><td>1146 </td></tr>\n",
"\t<tr><td>MIA </td><td>43 </td><td>28.4 </td><td>4.80 </td><td>162 </td><td>6248 </td><td>5602 </td><td>778 </td><td>1497 </td><td>271 </td><td>⋯ </td><td>.431 </td><td>.761 </td><td>107 </td><td>2412 </td><td>119 </td><td>67 </td><td>50 </td><td>41 </td><td>48 </td><td>1130 </td></tr>\n",
"\t<tr><td>MIL </td><td>50 </td><td>27.4 </td><td>4.52 </td><td>162 </td><td>6135 </td><td>5467 </td><td>732 </td><td>1363 </td><td>267 </td><td>⋯ </td><td>.429 </td><td>.751 </td><td>94 </td><td>2346 </td><td>116 </td><td>53 </td><td>42 </td><td>26 </td><td>34 </td><td>1088 </td></tr>\n",
"\t<tr><td>MIN </td><td>52 </td><td>27.0 </td><td>5.03 </td><td>162 </td><td>6261 </td><td>5557 </td><td>815 </td><td>1444 </td><td>286 </td><td>⋯ </td><td>.434 </td><td>.768 </td><td>104 </td><td>2410 </td><td>105 </td><td>46 </td><td>26 </td><td>39 </td><td>26 </td><td>1147 </td></tr>\n",
"\t<tr><td>NYM </td><td>52 </td><td>28.8 </td><td>4.54 </td><td>162 </td><td>6169 </td><td>5510 </td><td>735 </td><td>1379 </td><td>286 </td><td>⋯ </td><td>.434 </td><td>.755 </td><td>101 </td><td>2393 </td><td>118 </td><td>57 </td><td>36 </td><td>37 </td><td>31 </td><td>1099 </td></tr>\n",
"\t<tr><td>NYY </td><td>51 </td><td>28.6 </td><td>5.30 </td><td>162 </td><td>6354 </td><td>5594 </td><td>858 </td><td>1463 </td><td>266 </td><td>⋯ </td><td>.447 </td><td>.785 </td><td>105 </td><td>2498 </td><td>119 </td><td>64 </td><td>18 </td><td>56 </td><td>22 </td><td>1184 </td></tr>\n",
"\t<tr><td>OAK </td><td>54 </td><td>28.7 </td><td>4.56 </td><td>162 </td><td>6126 </td><td>5464 </td><td>739 </td><td>1344 </td><td>305 </td><td>⋯ </td><td>.436 </td><td>.755 </td><td>104 </td><td>2381 </td><td>129 </td><td>43 </td><td>13 </td><td>40 </td><td>15 </td><td>1075 </td></tr>\n",
"\t<tr><td>PHI </td><td>51 </td><td>26.6 </td><td>4.26 </td><td>162 </td><td>6133 </td><td>5535 </td><td>690 </td><td>1382 </td><td>287 </td><td>⋯ </td><td>.409 </td><td>.723 </td><td>89 </td><td>2263 </td><td>128 </td><td>47 </td><td>21 </td><td>36 </td><td>25 </td><td>1079 </td></tr>\n",
"\t<tr><td>PIT </td><td>47 </td><td>28.2 </td><td>4.12 </td><td>162 </td><td>6136 </td><td>5458 </td><td>668 </td><td>1331 </td><td>249 </td><td>⋯ </td><td>.386 </td><td>.704 </td><td>86 </td><td>2105 </td><td>120 </td><td>88 </td><td>42 </td><td>28 </td><td>39 </td><td>1129 </td></tr>\n",
"\t<tr><td>SDP </td><td>52 </td><td>26.2 </td><td>3.73 </td><td>162 </td><td>5954 </td><td>5356 </td><td>604 </td><td>1251 </td><td>227 </td><td>⋯ </td><td>.393 </td><td>.692 </td><td>83 </td><td>2107 </td><td>99 </td><td>53 </td><td>52 </td><td>33 </td><td>20 </td><td>1037 </td></tr>\n",
"\t<tr><td>SEA </td><td>61 </td><td>29.5 </td><td>4.63 </td><td>162 </td><td>6166 </td><td>5551 </td><td>750 </td><td>1436 </td><td>281 </td><td>⋯ </td><td>.424 </td><td>.749 </td><td>103 </td><td>2351 </td><td>131 </td><td>78 </td><td>14 </td><td>35 </td><td>31 </td><td>1084 </td></tr>\n",
"\t<tr><td>SFG </td><td>49 </td><td>29.5 </td><td>3.94 </td><td>162 </td><td>6137 </td><td>5551 </td><td>639 </td><td>1382 </td><td>290 </td><td>⋯ </td><td>.380 </td><td>.689 </td><td>81 </td><td>2112 </td><td>136 </td><td>36 </td><td>31 </td><td>52 </td><td>37 </td><td>1093 </td></tr>\n",
"\t<tr><td>STL </td><td>48 </td><td>28.0 </td><td>4.70 </td><td>162 </td><td>6219 </td><td>5470 </td><td>761 </td><td>1402 </td><td>284 </td><td>⋯ </td><td>.426 </td><td>.760 </td><td>99 </td><td>2330 </td><td>139 </td><td>65 </td><td>47 </td><td>44 </td><td>36 </td><td>1118 </td></tr>\n",
"\t<tr><td>TBR </td><td>53 </td><td>28.3 </td><td>4.28 </td><td>162 </td><td>6147 </td><td>5478 </td><td>694 </td><td>1340 </td><td>226 </td><td>⋯ </td><td>.422 </td><td>.739 </td><td>99 </td><td>2314 </td><td>115 </td><td>55 </td><td>16 </td><td>48 </td><td>33 </td><td>1114 </td></tr>\n",
"\t<tr><td>TEX </td><td>51 </td><td>28.3 </td><td>4.93 </td><td>162 </td><td>6122 </td><td>5430 </td><td>799 </td><td>1326 </td><td>255 </td><td>⋯ </td><td>.430 </td><td>.750 </td><td>91 </td><td>2334 </td><td>110 </td><td>81 </td><td>27 </td><td>39 </td><td>18 </td><td>1015 </td></tr>\n",
"\t<tr><td>TOR </td><td>60 </td><td>30.9 </td><td>4.28 </td><td>162 </td><td>6154 </td><td>5499 </td><td>693 </td><td>1320 </td><td>269 </td><td>⋯ </td><td>.412 </td><td>.724 </td><td>91 </td><td>2265 </td><td>153 </td><td>51 </td><td>25 </td><td>35 </td><td>12 </td><td>1064 </td></tr>\n",
"\t<tr><td>WSN </td><td>49 </td><td>29.2 </td><td>5.06 </td><td>162 </td><td>6214 </td><td>5553 </td><td>819 </td><td>1477 </td><td>311 </td><td>⋯ </td><td>.449 </td><td>.782 </td><td>99 </td><td>2495 </td><td>116 </td><td>31 </td><td>43 </td><td>45 </td><td>56 </td><td>1101 </td></tr>\n",
"\t<tr><td>LgAvg </td><td>45 </td><td>28.3 </td><td>4.65 </td><td>162 </td><td>6177 </td><td>5519 </td><td>753 </td><td>1407 </td><td>280 </td><td>⋯ </td><td>.426 </td><td>.750 </td><td>97 </td><td>2351 </td><td>127 </td><td>59 </td><td>31 </td><td>39 </td><td>32 </td><td>1098 </td></tr>\n",
"\t<tr><td> </td><td>1358 </td><td>28.3 </td><td>4.65 </td><td>4860 </td><td>185295</td><td>165567</td><td>22582 </td><td>42215 </td><td>8397 </td><td>⋯ </td><td>.426 </td><td>.750 </td><td>97 </td><td>70517 </td><td>3804 </td><td>1763 </td><td>925 </td><td>1168 </td><td>970 </td><td>32942 </td></tr>\n",
"\t<tr><td>Tm </td><td>#Bat </td><td>BatAge</td><td>R/G </td><td>G </td><td>PA </td><td>AB </td><td>R </td><td>H </td><td>2B </td><td>⋯ </td><td>SLG </td><td>OPS </td><td>OPS+ </td><td>TB </td><td>GDP </td><td>HBP </td><td>SH </td><td>SF </td><td>IBB </td><td>LOB </td></tr>\n",
"</tbody>\n",
"</table>\n"
],
"text/latex": [
"\\begin{tabular}{r|lllllllllllllllllllllllllllll}\n",
" Tm & \\#Bat & BatAge & R/G & G & PA & AB & R & H & 2B & ⋯ & SLG & OPS & OPS+ & TB & GDP & HBP & SH & SF & IBB & LOB\\\\\n",
"\\hline\n",
"\t ARI & 45 & 28.3 & 5.01 & 162 & 6224 & 5525 & 812 & 1405 & 314 & ⋯ & .445 & .774 & 94 & 2457 & 106 & 54 & 39 & 27 & 44 & 1118 \\\\\n",
"\t ATL & 49 & 28.7 & 4.52 & 162 & 6216 & 5584 & 732 & 1467 & 289 & ⋯ & .412 & .738 & 92 & 2303 & 137 & 66 & 59 & 32 & 57 & 1127 \\\\\n",
"\t BAL & 50 & 28.6 & 4.59 & 162 & 6140 & 5650 & 743 & 1469 & 269 & ⋯ & .435 & .747 & 100 & 2458 & 138 & 50 & 10 & 37 & 12 & 1041 \\\\\n",
"\t BOS & 49 & 27.3 & 4.85 & 162 & 6338 & 5669 & 785 & 1461 & 302 & ⋯ & .407 & .736 & 92 & 2305 & 141 & 53 & 9 & 36 & 48 & 1134 \\\\\n",
"\t CHC & 47 & 27.1 & 5.07 & 162 & 6283 & 5496 & 822 & 1402 & 274 & ⋯ & .437 & .775 & 99 & 2403 & 134 & 82 & 48 & 32 & 54 & 1147 \\\\\n",
"\t CHW & 51 & 26.7 & 4.36 & 162 & 6059 & 5513 & 706 & 1412 & 256 & ⋯ & .417 & .731 & 96 & 2300 & 124 & 76 & 35 & 33 & 17 & 1055 \\\\\n",
"\t CIN & 47 & 27.1 & 4.65 & 162 & 6213 & 5484 & 753 & 1390 & 249 & ⋯ & .433 & .761 & 97 & 2372 & 116 & 72 & 50 & 42 & 41 & 1135 \\\\\n",
"\t CLE & 41 & 28.0 & 5.05 & 162 & 6234 & 5511 & 818 & 1449 & 333 & ⋯ & .449 & .788 & 104 & 2476 & 125 & 50 & 23 & 45 & 30 & 1158 \\\\\n",
"\t COL & 41 & 28.3 & 5.09 & 162 & 6201 & 5534 & 824 & 1510 & 293 & ⋯ & .444 & .781 & 90 & 2455 & 143 & 44 & 62 & 41 & 46 & 1088 \\\\\n",
"\t DET & 49 & 29.6 & 4.54 & 162 & 6150 & 5556 & 735 & 1435 & 289 & ⋯ & .424 & .748 & 98 & 2355 & 128 & 52 & 11 & 27 & 21 & 1104 \\\\\n",
"\t HOU & 46 & 28.8 & 5.53 & 162 & 6271 & 5611 & 896 & 1581 & 346 & ⋯ & .478 & .823 & 123 & 2681 & 139 & 70 & 11 & 61 & 27 & 1094 \\\\\n",
"\t KCR & 49 & 28.9 & 4.33 & 162 & 6027 & 5536 & 702 & 1436 & 260 & ⋯ & .420 & .731 & 93 & 2323 & 160 & 45 & 17 & 37 & 19 & 1005 \\\\\n",
"\t LAA & 55 & 30.0 & 4.38 & 162 & 6073 & 5415 & 710 & 1314 & 251 & ⋯ & .397 & .712 & 92 & 2151 & 141 & 70 & 17 & 46 & 30 & 1033 \\\\\n",
"\t LAD & 52 & 27.9 & 4.75 & 162 & 6191 & 5408 & 770 & 1347 & 312 & ⋯ & .437 & .771 & 104 & 2362 & 119 & 64 & 31 & 38 & 41 & 1146 \\\\\n",
"\t MIA & 43 & 28.4 & 4.80 & 162 & 6248 & 5602 & 778 & 1497 & 271 & ⋯ & .431 & .761 & 107 & 2412 & 119 & 67 & 50 & 41 & 48 & 1130 \\\\\n",
"\t MIL & 50 & 27.4 & 4.52 & 162 & 6135 & 5467 & 732 & 1363 & 267 & ⋯ & .429 & .751 & 94 & 2346 & 116 & 53 & 42 & 26 & 34 & 1088 \\\\\n",
"\t MIN & 52 & 27.0 & 5.03 & 162 & 6261 & 5557 & 815 & 1444 & 286 & ⋯ & .434 & .768 & 104 & 2410 & 105 & 46 & 26 & 39 & 26 & 1147 \\\\\n",
"\t NYM & 52 & 28.8 & 4.54 & 162 & 6169 & 5510 & 735 & 1379 & 286 & ⋯ & .434 & .755 & 101 & 2393 & 118 & 57 & 36 & 37 & 31 & 1099 \\\\\n",
"\t NYY & 51 & 28.6 & 5.30 & 162 & 6354 & 5594 & 858 & 1463 & 266 & ⋯ & .447 & .785 & 105 & 2498 & 119 & 64 & 18 & 56 & 22 & 1184 \\\\\n",
"\t OAK & 54 & 28.7 & 4.56 & 162 & 6126 & 5464 & 739 & 1344 & 305 & ⋯ & .436 & .755 & 104 & 2381 & 129 & 43 & 13 & 40 & 15 & 1075 \\\\\n",
"\t PHI & 51 & 26.6 & 4.26 & 162 & 6133 & 5535 & 690 & 1382 & 287 & ⋯ & .409 & .723 & 89 & 2263 & 128 & 47 & 21 & 36 & 25 & 1079 \\\\\n",
"\t PIT & 47 & 28.2 & 4.12 & 162 & 6136 & 5458 & 668 & 1331 & 249 & ⋯ & .386 & .704 & 86 & 2105 & 120 & 88 & 42 & 28 & 39 & 1129 \\\\\n",
"\t SDP & 52 & 26.2 & 3.73 & 162 & 5954 & 5356 & 604 & 1251 & 227 & ⋯ & .393 & .692 & 83 & 2107 & 99 & 53 & 52 & 33 & 20 & 1037 \\\\\n",
"\t SEA & 61 & 29.5 & 4.63 & 162 & 6166 & 5551 & 750 & 1436 & 281 & ⋯ & .424 & .749 & 103 & 2351 & 131 & 78 & 14 & 35 & 31 & 1084 \\\\\n",
"\t SFG & 49 & 29.5 & 3.94 & 162 & 6137 & 5551 & 639 & 1382 & 290 & ⋯ & .380 & .689 & 81 & 2112 & 136 & 36 & 31 & 52 & 37 & 1093 \\\\\n",
"\t STL & 48 & 28.0 & 4.70 & 162 & 6219 & 5470 & 761 & 1402 & 284 & ⋯ & .426 & .760 & 99 & 2330 & 139 & 65 & 47 & 44 & 36 & 1118 \\\\\n",
"\t TBR & 53 & 28.3 & 4.28 & 162 & 6147 & 5478 & 694 & 1340 & 226 & ⋯ & .422 & .739 & 99 & 2314 & 115 & 55 & 16 & 48 & 33 & 1114 \\\\\n",
"\t TEX & 51 & 28.3 & 4.93 & 162 & 6122 & 5430 & 799 & 1326 & 255 & ⋯ & .430 & .750 & 91 & 2334 & 110 & 81 & 27 & 39 & 18 & 1015 \\\\\n",
"\t TOR & 60 & 30.9 & 4.28 & 162 & 6154 & 5499 & 693 & 1320 & 269 & ⋯ & .412 & .724 & 91 & 2265 & 153 & 51 & 25 & 35 & 12 & 1064 \\\\\n",
"\t WSN & 49 & 29.2 & 5.06 & 162 & 6214 & 5553 & 819 & 1477 & 311 & ⋯ & .449 & .782 & 99 & 2495 & 116 & 31 & 43 & 45 & 56 & 1101 \\\\\n",
"\t LgAvg & 45 & 28.3 & 4.65 & 162 & 6177 & 5519 & 753 & 1407 & 280 & ⋯ & .426 & .750 & 97 & 2351 & 127 & 59 & 31 & 39 & 32 & 1098 \\\\\n",
"\t & 1358 & 28.3 & 4.65 & 4860 & 185295 & 165567 & 22582 & 42215 & 8397 & ⋯ & .426 & .750 & 97 & 70517 & 3804 & 1763 & 925 & 1168 & 970 & 32942 \\\\\n",
"\t Tm & \\#Bat & BatAge & R/G & G & PA & AB & R & H & 2B & ⋯ & SLG & OPS & OPS+ & TB & GDP & HBP & SH & SF & IBB & LOB \\\\\n",
"\\end{tabular}\n"
],
"text/markdown": [
"\n",
"Tm | #Bat | BatAge | R/G | G | PA | AB | R | H | 2B | ⋯ | SLG | OPS | OPS+ | TB | GDP | HBP | SH | SF | IBB | LOB | \n",
"|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|\n",
"| ARI | 45 | 28.3 | 5.01 | 162 | 6224 | 5525 | 812 | 1405 | 314 | ⋯ | .445 | .774 | 94 | 2457 | 106 | 54 | 39 | 27 | 44 | 1118 | \n",
"| ATL | 49 | 28.7 | 4.52 | 162 | 6216 | 5584 | 732 | 1467 | 289 | ⋯ | .412 | .738 | 92 | 2303 | 137 | 66 | 59 | 32 | 57 | 1127 | \n",
"| BAL | 50 | 28.6 | 4.59 | 162 | 6140 | 5650 | 743 | 1469 | 269 | ⋯ | .435 | .747 | 100 | 2458 | 138 | 50 | 10 | 37 | 12 | 1041 | \n",
"| BOS | 49 | 27.3 | 4.85 | 162 | 6338 | 5669 | 785 | 1461 | 302 | ⋯ | .407 | .736 | 92 | 2305 | 141 | 53 | 9 | 36 | 48 | 1134 | \n",
"| CHC | 47 | 27.1 | 5.07 | 162 | 6283 | 5496 | 822 | 1402 | 274 | ⋯ | .437 | .775 | 99 | 2403 | 134 | 82 | 48 | 32 | 54 | 1147 | \n",
"| CHW | 51 | 26.7 | 4.36 | 162 | 6059 | 5513 | 706 | 1412 | 256 | ⋯ | .417 | .731 | 96 | 2300 | 124 | 76 | 35 | 33 | 17 | 1055 | \n",
"| CIN | 47 | 27.1 | 4.65 | 162 | 6213 | 5484 | 753 | 1390 | 249 | ⋯ | .433 | .761 | 97 | 2372 | 116 | 72 | 50 | 42 | 41 | 1135 | \n",
"| CLE | 41 | 28.0 | 5.05 | 162 | 6234 | 5511 | 818 | 1449 | 333 | ⋯ | .449 | .788 | 104 | 2476 | 125 | 50 | 23 | 45 | 30 | 1158 | \n",
"| COL | 41 | 28.3 | 5.09 | 162 | 6201 | 5534 | 824 | 1510 | 293 | ⋯ | .444 | .781 | 90 | 2455 | 143 | 44 | 62 | 41 | 46 | 1088 | \n",
"| DET | 49 | 29.6 | 4.54 | 162 | 6150 | 5556 | 735 | 1435 | 289 | ⋯ | .424 | .748 | 98 | 2355 | 128 | 52 | 11 | 27 | 21 | 1104 | \n",
"| HOU | 46 | 28.8 | 5.53 | 162 | 6271 | 5611 | 896 | 1581 | 346 | ⋯ | .478 | .823 | 123 | 2681 | 139 | 70 | 11 | 61 | 27 | 1094 | \n",
"| KCR | 49 | 28.9 | 4.33 | 162 | 6027 | 5536 | 702 | 1436 | 260 | ⋯ | .420 | .731 | 93 | 2323 | 160 | 45 | 17 | 37 | 19 | 1005 | \n",
"| LAA | 55 | 30.0 | 4.38 | 162 | 6073 | 5415 | 710 | 1314 | 251 | ⋯ | .397 | .712 | 92 | 2151 | 141 | 70 | 17 | 46 | 30 | 1033 | \n",
"| LAD | 52 | 27.9 | 4.75 | 162 | 6191 | 5408 | 770 | 1347 | 312 | ⋯ | .437 | .771 | 104 | 2362 | 119 | 64 | 31 | 38 | 41 | 1146 | \n",
"| MIA | 43 | 28.4 | 4.80 | 162 | 6248 | 5602 | 778 | 1497 | 271 | ⋯ | .431 | .761 | 107 | 2412 | 119 | 67 | 50 | 41 | 48 | 1130 | \n",
"| MIL | 50 | 27.4 | 4.52 | 162 | 6135 | 5467 | 732 | 1363 | 267 | ⋯ | .429 | .751 | 94 | 2346 | 116 | 53 | 42 | 26 | 34 | 1088 | \n",
"| MIN | 52 | 27.0 | 5.03 | 162 | 6261 | 5557 | 815 | 1444 | 286 | ⋯ | .434 | .768 | 104 | 2410 | 105 | 46 | 26 | 39 | 26 | 1147 | \n",
"| NYM | 52 | 28.8 | 4.54 | 162 | 6169 | 5510 | 735 | 1379 | 286 | ⋯ | .434 | .755 | 101 | 2393 | 118 | 57 | 36 | 37 | 31 | 1099 | \n",
"| NYY | 51 | 28.6 | 5.30 | 162 | 6354 | 5594 | 858 | 1463 | 266 | ⋯ | .447 | .785 | 105 | 2498 | 119 | 64 | 18 | 56 | 22 | 1184 | \n",
"| OAK | 54 | 28.7 | 4.56 | 162 | 6126 | 5464 | 739 | 1344 | 305 | ⋯ | .436 | .755 | 104 | 2381 | 129 | 43 | 13 | 40 | 15 | 1075 | \n",
"| PHI | 51 | 26.6 | 4.26 | 162 | 6133 | 5535 | 690 | 1382 | 287 | ⋯ | .409 | .723 | 89 | 2263 | 128 | 47 | 21 | 36 | 25 | 1079 | \n",
"| PIT | 47 | 28.2 | 4.12 | 162 | 6136 | 5458 | 668 | 1331 | 249 | ⋯ | .386 | .704 | 86 | 2105 | 120 | 88 | 42 | 28 | 39 | 1129 | \n",
"| SDP | 52 | 26.2 | 3.73 | 162 | 5954 | 5356 | 604 | 1251 | 227 | ⋯ | .393 | .692 | 83 | 2107 | 99 | 53 | 52 | 33 | 20 | 1037 | \n",
"| SEA | 61 | 29.5 | 4.63 | 162 | 6166 | 5551 | 750 | 1436 | 281 | ⋯ | .424 | .749 | 103 | 2351 | 131 | 78 | 14 | 35 | 31 | 1084 | \n",
"| SFG | 49 | 29.5 | 3.94 | 162 | 6137 | 5551 | 639 | 1382 | 290 | ⋯ | .380 | .689 | 81 | 2112 | 136 | 36 | 31 | 52 | 37 | 1093 | \n",
"| STL | 48 | 28.0 | 4.70 | 162 | 6219 | 5470 | 761 | 1402 | 284 | ⋯ | .426 | .760 | 99 | 2330 | 139 | 65 | 47 | 44 | 36 | 1118 | \n",
"| TBR | 53 | 28.3 | 4.28 | 162 | 6147 | 5478 | 694 | 1340 | 226 | ⋯ | .422 | .739 | 99 | 2314 | 115 | 55 | 16 | 48 | 33 | 1114 | \n",
"| TEX | 51 | 28.3 | 4.93 | 162 | 6122 | 5430 | 799 | 1326 | 255 | ⋯ | .430 | .750 | 91 | 2334 | 110 | 81 | 27 | 39 | 18 | 1015 | \n",
"| TOR | 60 | 30.9 | 4.28 | 162 | 6154 | 5499 | 693 | 1320 | 269 | ⋯ | .412 | .724 | 91 | 2265 | 153 | 51 | 25 | 35 | 12 | 1064 | \n",
"| WSN | 49 | 29.2 | 5.06 | 162 | 6214 | 5553 | 819 | 1477 | 311 | ⋯ | .449 | .782 | 99 | 2495 | 116 | 31 | 43 | 45 | 56 | 1101 | \n",
"| LgAvg | 45 | 28.3 | 4.65 | 162 | 6177 | 5519 | 753 | 1407 | 280 | ⋯ | .426 | .750 | 97 | 2351 | 127 | 59 | 31 | 39 | 32 | 1098 | \n",
"| | 1358 | 28.3 | 4.65 | 4860 | 185295 | 165567 | 22582 | 42215 | 8397 | ⋯ | .426 | .750 | 97 | 70517 | 3804 | 1763 | 925 | 1168 | 970 | 32942 | \n",
"| Tm | #Bat | BatAge | R/G | G | PA | AB | R | H | 2B | ⋯ | SLG | OPS | OPS+ | TB | GDP | HBP | SH | SF | IBB | LOB | \n",
"\n",
"\n"
],
"text/plain": [
" Tm #Bat BatAge R/G G PA AB R H 2B ⋯ SLG OPS OPS+\n",
"1 ARI 45 28.3 5.01 162 6224 5525 812 1405 314 ⋯ .445 .774 94 \n",
"2 ATL 49 28.7 4.52 162 6216 5584 732 1467 289 ⋯ .412 .738 92 \n",
"3 BAL 50 28.6 4.59 162 6140 5650 743 1469 269 ⋯ .435 .747 100 \n",
"4 BOS 49 27.3 4.85 162 6338 5669 785 1461 302 ⋯ .407 .736 92 \n",
"5 CHC 47 27.1 5.07 162 6283 5496 822 1402 274 ⋯ .437 .775 99 \n",
"6 CHW 51 26.7 4.36 162 6059 5513 706 1412 256 ⋯ .417 .731 96 \n",
"7 CIN 47 27.1 4.65 162 6213 5484 753 1390 249 ⋯ .433 .761 97 \n",
"8 CLE 41 28.0 5.05 162 6234 5511 818 1449 333 ⋯ .449 .788 104 \n",
"9 COL 41 28.3 5.09 162 6201 5534 824 1510 293 ⋯ .444 .781 90 \n",
"10 DET 49 29.6 4.54 162 6150 5556 735 1435 289 ⋯ .424 .748 98 \n",
"11 HOU 46 28.8 5.53 162 6271 5611 896 1581 346 ⋯ .478 .823 123 \n",
"12 KCR 49 28.9 4.33 162 6027 5536 702 1436 260 ⋯ .420 .731 93 \n",
"13 LAA 55 30.0 4.38 162 6073 5415 710 1314 251 ⋯ .397 .712 92 \n",
"14 LAD 52 27.9 4.75 162 6191 5408 770 1347 312 ⋯ .437 .771 104 \n",
"15 MIA 43 28.4 4.80 162 6248 5602 778 1497 271 ⋯ .431 .761 107 \n",
"16 MIL 50 27.4 4.52 162 6135 5467 732 1363 267 ⋯ .429 .751 94 \n",
"17 MIN 52 27.0 5.03 162 6261 5557 815 1444 286 ⋯ .434 .768 104 \n",
"18 NYM 52 28.8 4.54 162 6169 5510 735 1379 286 ⋯ .434 .755 101 \n",
"19 NYY 51 28.6 5.30 162 6354 5594 858 1463 266 ⋯ .447 .785 105 \n",
"20 OAK 54 28.7 4.56 162 6126 5464 739 1344 305 ⋯ .436 .755 104 \n",
"21 PHI 51 26.6 4.26 162 6133 5535 690 1382 287 ⋯ .409 .723 89 \n",
"22 PIT 47 28.2 4.12 162 6136 5458 668 1331 249 ⋯ .386 .704 86 \n",
"23 SDP 52 26.2 3.73 162 5954 5356 604 1251 227 ⋯ .393 .692 83 \n",
"24 SEA 61 29.5 4.63 162 6166 5551 750 1436 281 ⋯ .424 .749 103 \n",
"25 SFG 49 29.5 3.94 162 6137 5551 639 1382 290 ⋯ .380 .689 81 \n",
"26 STL 48 28.0 4.70 162 6219 5470 761 1402 284 ⋯ .426 .760 99 \n",
"27 TBR 53 28.3 4.28 162 6147 5478 694 1340 226 ⋯ .422 .739 99 \n",
"28 TEX 51 28.3 4.93 162 6122 5430 799 1326 255 ⋯ .430 .750 91 \n",
"29 TOR 60 30.9 4.28 162 6154 5499 693 1320 269 ⋯ .412 .724 91 \n",
"30 WSN 49 29.2 5.06 162 6214 5553 819 1477 311 ⋯ .449 .782 99 \n",
"31 LgAvg 45 28.3 4.65 162 6177 5519 753 1407 280 ⋯ .426 .750 97 \n",
"32 1358 28.3 4.65 4860 185295 165567 22582 42215 8397 ⋯ .426 .750 97 \n",
"33 Tm #Bat BatAge R/G G PA AB R H 2B ⋯ SLG OPS OPS+\n",
" TB GDP HBP SH SF IBB LOB \n",
"1 2457 106 54 39 27 44 1118 \n",
"2 2303 137 66 59 32 57 1127 \n",
"3 2458 138 50 10 37 12 1041 \n",
"4 2305 141 53 9 36 48 1134 \n",
"5 2403 134 82 48 32 54 1147 \n",
"6 2300 124 76 35 33 17 1055 \n",
"7 2372 116 72 50 42 41 1135 \n",
"8 2476 125 50 23 45 30 1158 \n",
"9 2455 143 44 62 41 46 1088 \n",
"10 2355 128 52 11 27 21 1104 \n",
"11 2681 139 70 11 61 27 1094 \n",
"12 2323 160 45 17 37 19 1005 \n",
"13 2151 141 70 17 46 30 1033 \n",
"14 2362 119 64 31 38 41 1146 \n",
"15 2412 119 67 50 41 48 1130 \n",
"16 2346 116 53 42 26 34 1088 \n",
"17 2410 105 46 26 39 26 1147 \n",
"18 2393 118 57 36 37 31 1099 \n",
"19 2498 119 64 18 56 22 1184 \n",
"20 2381 129 43 13 40 15 1075 \n",
"21 2263 128 47 21 36 25 1079 \n",
"22 2105 120 88 42 28 39 1129 \n",
"23 2107 99 53 52 33 20 1037 \n",
"24 2351 131 78 14 35 31 1084 \n",
"25 2112 136 36 31 52 37 1093 \n",
"26 2330 139 65 47 44 36 1118 \n",
"27 2314 115 55 16 48 33 1114 \n",
"28 2334 110 81 27 39 18 1015 \n",
"29 2265 153 51 25 35 12 1064 \n",
"30 2495 116 31 43 45 56 1101 \n",
"31 2351 127 59 31 39 32 1098 \n",
"32 70517 3804 1763 925 1168 970 32942\n",
"33 TB GDP HBP SH SF IBB LOB "
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# Pipe in selector\n",
"bdata = mlb_batting2 %>% html_nodes('table') %>% .[[1]] %>%\n",
" html_table()\n",
"bdata"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"But there are those annyoing bits at the bottom that aren't really teams, we'll need to remove those"
]
},
{
"cell_type": "code",
"execution_count": 67,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<table>\n",
"<thead><tr><th scope=col>Tm</th><th scope=col>#Bat</th><th scope=col>BatAge</th><th scope=col>R/G</th><th scope=col>G</th><th scope=col>PA</th><th scope=col>AB</th><th scope=col>R</th><th scope=col>H</th><th scope=col>2B</th><th scope=col>⋯</th><th scope=col>SLG</th><th scope=col>OPS</th><th scope=col>OPS+</th><th scope=col>TB</th><th scope=col>GDP</th><th scope=col>HBP</th><th scope=col>SH</th><th scope=col>SF</th><th scope=col>IBB</th><th scope=col>LOB</th></tr></thead>\n",
"<tbody>\n",
"\t<tr><td>ARI </td><td>45 </td><td>28.3</td><td>5.01</td><td>162 </td><td>6224</td><td>5525</td><td>812 </td><td>1405</td><td>314 </td><td>⋯ </td><td>.445</td><td>.774</td><td>94 </td><td>2457</td><td>106 </td><td>54 </td><td>39 </td><td>27 </td><td>44 </td><td>1118</td></tr>\n",
"\t<tr><td>ATL </td><td>49 </td><td>28.7</td><td>4.52</td><td>162 </td><td>6216</td><td>5584</td><td>732 </td><td>1467</td><td>289 </td><td>⋯ </td><td>.412</td><td>.738</td><td>92 </td><td>2303</td><td>137 </td><td>66 </td><td>59 </td><td>32 </td><td>57 </td><td>1127</td></tr>\n",
"\t<tr><td>BAL </td><td>50 </td><td>28.6</td><td>4.59</td><td>162 </td><td>6140</td><td>5650</td><td>743 </td><td>1469</td><td>269 </td><td>⋯ </td><td>.435</td><td>.747</td><td>100 </td><td>2458</td><td>138 </td><td>50 </td><td>10 </td><td>37 </td><td>12 </td><td>1041</td></tr>\n",
"\t<tr><td>BOS </td><td>49 </td><td>27.3</td><td>4.85</td><td>162 </td><td>6338</td><td>5669</td><td>785 </td><td>1461</td><td>302 </td><td>⋯ </td><td>.407</td><td>.736</td><td>92 </td><td>2305</td><td>141 </td><td>53 </td><td>9 </td><td>36 </td><td>48 </td><td>1134</td></tr>\n",
"\t<tr><td>CHC </td><td>47 </td><td>27.1</td><td>5.07</td><td>162 </td><td>6283</td><td>5496</td><td>822 </td><td>1402</td><td>274 </td><td>⋯ </td><td>.437</td><td>.775</td><td>99 </td><td>2403</td><td>134 </td><td>82 </td><td>48 </td><td>32 </td><td>54 </td><td>1147</td></tr>\n",
"\t<tr><td>CHW </td><td>51 </td><td>26.7</td><td>4.36</td><td>162 </td><td>6059</td><td>5513</td><td>706 </td><td>1412</td><td>256 </td><td>⋯ </td><td>.417</td><td>.731</td><td>96 </td><td>2300</td><td>124 </td><td>76 </td><td>35 </td><td>33 </td><td>17 </td><td>1055</td></tr>\n",
"\t<tr><td>CIN </td><td>47 </td><td>27.1</td><td>4.65</td><td>162 </td><td>6213</td><td>5484</td><td>753 </td><td>1390</td><td>249 </td><td>⋯ </td><td>.433</td><td>.761</td><td>97 </td><td>2372</td><td>116 </td><td>72 </td><td>50 </td><td>42 </td><td>41 </td><td>1135</td></tr>\n",
"\t<tr><td>CLE </td><td>41 </td><td>28.0</td><td>5.05</td><td>162 </td><td>6234</td><td>5511</td><td>818 </td><td>1449</td><td>333 </td><td>⋯ </td><td>.449</td><td>.788</td><td>104 </td><td>2476</td><td>125 </td><td>50 </td><td>23 </td><td>45 </td><td>30 </td><td>1158</td></tr>\n",
"\t<tr><td>COL </td><td>41 </td><td>28.3</td><td>5.09</td><td>162 </td><td>6201</td><td>5534</td><td>824 </td><td>1510</td><td>293 </td><td>⋯ </td><td>.444</td><td>.781</td><td>90 </td><td>2455</td><td>143 </td><td>44 </td><td>62 </td><td>41 </td><td>46 </td><td>1088</td></tr>\n",
"\t<tr><td>DET </td><td>49 </td><td>29.6</td><td>4.54</td><td>162 </td><td>6150</td><td>5556</td><td>735 </td><td>1435</td><td>289 </td><td>⋯ </td><td>.424</td><td>.748</td><td>98 </td><td>2355</td><td>128 </td><td>52 </td><td>11 </td><td>27 </td><td>21 </td><td>1104</td></tr>\n",
"\t<tr><td>HOU </td><td>46 </td><td>28.8</td><td>5.53</td><td>162 </td><td>6271</td><td>5611</td><td>896 </td><td>1581</td><td>346 </td><td>⋯ </td><td>.478</td><td>.823</td><td>123 </td><td>2681</td><td>139 </td><td>70 </td><td>11 </td><td>61 </td><td>27 </td><td>1094</td></tr>\n",
"\t<tr><td>KCR </td><td>49 </td><td>28.9</td><td>4.33</td><td>162 </td><td>6027</td><td>5536</td><td>702 </td><td>1436</td><td>260 </td><td>⋯ </td><td>.420</td><td>.731</td><td>93 </td><td>2323</td><td>160 </td><td>45 </td><td>17 </td><td>37 </td><td>19 </td><td>1005</td></tr>\n",
"\t<tr><td>LAA </td><td>55 </td><td>30.0</td><td>4.38</td><td>162 </td><td>6073</td><td>5415</td><td>710 </td><td>1314</td><td>251 </td><td>⋯ </td><td>.397</td><td>.712</td><td>92 </td><td>2151</td><td>141 </td><td>70 </td><td>17 </td><td>46 </td><td>30 </td><td>1033</td></tr>\n",
"\t<tr><td>LAD </td><td>52 </td><td>27.9</td><td>4.75</td><td>162 </td><td>6191</td><td>5408</td><td>770 </td><td>1347</td><td>312 </td><td>⋯ </td><td>.437</td><td>.771</td><td>104 </td><td>2362</td><td>119 </td><td>64 </td><td>31 </td><td>38 </td><td>41 </td><td>1146</td></tr>\n",
"\t<tr><td>MIA </td><td>43 </td><td>28.4</td><td>4.80</td><td>162 </td><td>6248</td><td>5602</td><td>778 </td><td>1497</td><td>271 </td><td>⋯ </td><td>.431</td><td>.761</td><td>107 </td><td>2412</td><td>119 </td><td>67 </td><td>50 </td><td>41 </td><td>48 </td><td>1130</td></tr>\n",
"\t<tr><td>MIL </td><td>50 </td><td>27.4</td><td>4.52</td><td>162 </td><td>6135</td><td>5467</td><td>732 </td><td>1363</td><td>267 </td><td>⋯ </td><td>.429</td><td>.751</td><td>94 </td><td>2346</td><td>116 </td><td>53 </td><td>42 </td><td>26 </td><td>34 </td><td>1088</td></tr>\n",
"\t<tr><td>MIN </td><td>52 </td><td>27.0</td><td>5.03</td><td>162 </td><td>6261</td><td>5557</td><td>815 </td><td>1444</td><td>286 </td><td>⋯ </td><td>.434</td><td>.768</td><td>104 </td><td>2410</td><td>105 </td><td>46 </td><td>26 </td><td>39 </td><td>26 </td><td>1147</td></tr>\n",
"\t<tr><td>NYM </td><td>52 </td><td>28.8</td><td>4.54</td><td>162 </td><td>6169</td><td>5510</td><td>735 </td><td>1379</td><td>286 </td><td>⋯ </td><td>.434</td><td>.755</td><td>101 </td><td>2393</td><td>118 </td><td>57 </td><td>36 </td><td>37 </td><td>31 </td><td>1099</td></tr>\n",
"\t<tr><td>NYY </td><td>51 </td><td>28.6</td><td>5.30</td><td>162 </td><td>6354</td><td>5594</td><td>858 </td><td>1463</td><td>266 </td><td>⋯ </td><td>.447</td><td>.785</td><td>105 </td><td>2498</td><td>119 </td><td>64 </td><td>18 </td><td>56 </td><td>22 </td><td>1184</td></tr>\n",
"\t<tr><td>OAK </td><td>54 </td><td>28.7</td><td>4.56</td><td>162 </td><td>6126</td><td>5464</td><td>739 </td><td>1344</td><td>305 </td><td>⋯ </td><td>.436</td><td>.755</td><td>104 </td><td>2381</td><td>129 </td><td>43 </td><td>13 </td><td>40 </td><td>15 </td><td>1075</td></tr>\n",
"\t<tr><td>PHI </td><td>51 </td><td>26.6</td><td>4.26</td><td>162 </td><td>6133</td><td>5535</td><td>690 </td><td>1382</td><td>287 </td><td>⋯ </td><td>.409</td><td>.723</td><td>89 </td><td>2263</td><td>128 </td><td>47 </td><td>21 </td><td>36 </td><td>25 </td><td>1079</td></tr>\n",
"\t<tr><td>PIT </td><td>47 </td><td>28.2</td><td>4.12</td><td>162 </td><td>6136</td><td>5458</td><td>668 </td><td>1331</td><td>249 </td><td>⋯ </td><td>.386</td><td>.704</td><td>86 </td><td>2105</td><td>120 </td><td>88 </td><td>42 </td><td>28 </td><td>39 </td><td>1129</td></tr>\n",
"\t<tr><td>SDP </td><td>52 </td><td>26.2</td><td>3.73</td><td>162 </td><td>5954</td><td>5356</td><td>604 </td><td>1251</td><td>227 </td><td>⋯ </td><td>.393</td><td>.692</td><td>83 </td><td>2107</td><td>99 </td><td>53 </td><td>52 </td><td>33 </td><td>20 </td><td>1037</td></tr>\n",
"\t<tr><td>SEA </td><td>61 </td><td>29.5</td><td>4.63</td><td>162 </td><td>6166</td><td>5551</td><td>750 </td><td>1436</td><td>281 </td><td>⋯ </td><td>.424</td><td>.749</td><td>103 </td><td>2351</td><td>131 </td><td>78 </td><td>14 </td><td>35 </td><td>31 </td><td>1084</td></tr>\n",
"\t<tr><td>SFG </td><td>49 </td><td>29.5</td><td>3.94</td><td>162 </td><td>6137</td><td>5551</td><td>639 </td><td>1382</td><td>290 </td><td>⋯ </td><td>.380</td><td>.689</td><td>81 </td><td>2112</td><td>136 </td><td>36 </td><td>31 </td><td>52 </td><td>37 </td><td>1093</td></tr>\n",
"\t<tr><td>STL </td><td>48 </td><td>28.0</td><td>4.70</td><td>162 </td><td>6219</td><td>5470</td><td>761 </td><td>1402</td><td>284 </td><td>⋯ </td><td>.426</td><td>.760</td><td>99 </td><td>2330</td><td>139 </td><td>65 </td><td>47 </td><td>44 </td><td>36 </td><td>1118</td></tr>\n",
"\t<tr><td>TBR </td><td>53 </td><td>28.3</td><td>4.28</td><td>162 </td><td>6147</td><td>5478</td><td>694 </td><td>1340</td><td>226 </td><td>⋯ </td><td>.422</td><td>.739</td><td>99 </td><td>2314</td><td>115 </td><td>55 </td><td>16 </td><td>48 </td><td>33 </td><td>1114</td></tr>\n",
"\t<tr><td>TEX </td><td>51 </td><td>28.3</td><td>4.93</td><td>162 </td><td>6122</td><td>5430</td><td>799 </td><td>1326</td><td>255 </td><td>⋯ </td><td>.430</td><td>.750</td><td>91 </td><td>2334</td><td>110 </td><td>81 </td><td>27 </td><td>39 </td><td>18 </td><td>1015</td></tr>\n",
"\t<tr><td>TOR </td><td>60 </td><td>30.9</td><td>4.28</td><td>162 </td><td>6154</td><td>5499</td><td>693 </td><td>1320</td><td>269 </td><td>⋯ </td><td>.412</td><td>.724</td><td>91 </td><td>2265</td><td>153 </td><td>51 </td><td>25 </td><td>35 </td><td>12 </td><td>1064</td></tr>\n",
"\t<tr><td>WSN </td><td>49 </td><td>29.2</td><td>5.06</td><td>162 </td><td>6214</td><td>5553</td><td>819 </td><td>1477</td><td>311 </td><td>⋯ </td><td>.449</td><td>.782</td><td>99 </td><td>2495</td><td>116 </td><td>31 </td><td>43 </td><td>45 </td><td>56 </td><td>1101</td></tr>\n",
"</tbody>\n",
"</table>\n"
],
"text/latex": [
"\\begin{tabular}{r|lllllllllllllllllllllllllllll}\n",
" Tm & \\#Bat & BatAge & R/G & G & PA & AB & R & H & 2B & ⋯ & SLG & OPS & OPS+ & TB & GDP & HBP & SH & SF & IBB & LOB\\\\\n",
"\\hline\n",
"\t ARI & 45 & 28.3 & 5.01 & 162 & 6224 & 5525 & 812 & 1405 & 314 & ⋯ & .445 & .774 & 94 & 2457 & 106 & 54 & 39 & 27 & 44 & 1118\\\\\n",
"\t ATL & 49 & 28.7 & 4.52 & 162 & 6216 & 5584 & 732 & 1467 & 289 & ⋯ & .412 & .738 & 92 & 2303 & 137 & 66 & 59 & 32 & 57 & 1127\\\\\n",
"\t BAL & 50 & 28.6 & 4.59 & 162 & 6140 & 5650 & 743 & 1469 & 269 & ⋯ & .435 & .747 & 100 & 2458 & 138 & 50 & 10 & 37 & 12 & 1041\\\\\n",
"\t BOS & 49 & 27.3 & 4.85 & 162 & 6338 & 5669 & 785 & 1461 & 302 & ⋯ & .407 & .736 & 92 & 2305 & 141 & 53 & 9 & 36 & 48 & 1134\\\\\n",
"\t CHC & 47 & 27.1 & 5.07 & 162 & 6283 & 5496 & 822 & 1402 & 274 & ⋯ & .437 & .775 & 99 & 2403 & 134 & 82 & 48 & 32 & 54 & 1147\\\\\n",
"\t CHW & 51 & 26.7 & 4.36 & 162 & 6059 & 5513 & 706 & 1412 & 256 & ⋯ & .417 & .731 & 96 & 2300 & 124 & 76 & 35 & 33 & 17 & 1055\\\\\n",
"\t CIN & 47 & 27.1 & 4.65 & 162 & 6213 & 5484 & 753 & 1390 & 249 & ⋯ & .433 & .761 & 97 & 2372 & 116 & 72 & 50 & 42 & 41 & 1135\\\\\n",
"\t CLE & 41 & 28.0 & 5.05 & 162 & 6234 & 5511 & 818 & 1449 & 333 & ⋯ & .449 & .788 & 104 & 2476 & 125 & 50 & 23 & 45 & 30 & 1158\\\\\n",
"\t COL & 41 & 28.3 & 5.09 & 162 & 6201 & 5534 & 824 & 1510 & 293 & ⋯ & .444 & .781 & 90 & 2455 & 143 & 44 & 62 & 41 & 46 & 1088\\\\\n",
"\t DET & 49 & 29.6 & 4.54 & 162 & 6150 & 5556 & 735 & 1435 & 289 & ⋯ & .424 & .748 & 98 & 2355 & 128 & 52 & 11 & 27 & 21 & 1104\\\\\n",
"\t HOU & 46 & 28.8 & 5.53 & 162 & 6271 & 5611 & 896 & 1581 & 346 & ⋯ & .478 & .823 & 123 & 2681 & 139 & 70 & 11 & 61 & 27 & 1094\\\\\n",
"\t KCR & 49 & 28.9 & 4.33 & 162 & 6027 & 5536 & 702 & 1436 & 260 & ⋯ & .420 & .731 & 93 & 2323 & 160 & 45 & 17 & 37 & 19 & 1005\\\\\n",
"\t LAA & 55 & 30.0 & 4.38 & 162 & 6073 & 5415 & 710 & 1314 & 251 & ⋯ & .397 & .712 & 92 & 2151 & 141 & 70 & 17 & 46 & 30 & 1033\\\\\n",
"\t LAD & 52 & 27.9 & 4.75 & 162 & 6191 & 5408 & 770 & 1347 & 312 & ⋯ & .437 & .771 & 104 & 2362 & 119 & 64 & 31 & 38 & 41 & 1146\\\\\n",
"\t MIA & 43 & 28.4 & 4.80 & 162 & 6248 & 5602 & 778 & 1497 & 271 & ⋯ & .431 & .761 & 107 & 2412 & 119 & 67 & 50 & 41 & 48 & 1130\\\\\n",
"\t MIL & 50 & 27.4 & 4.52 & 162 & 6135 & 5467 & 732 & 1363 & 267 & ⋯ & .429 & .751 & 94 & 2346 & 116 & 53 & 42 & 26 & 34 & 1088\\\\\n",
"\t MIN & 52 & 27.0 & 5.03 & 162 & 6261 & 5557 & 815 & 1444 & 286 & ⋯ & .434 & .768 & 104 & 2410 & 105 & 46 & 26 & 39 & 26 & 1147\\\\\n",
"\t NYM & 52 & 28.8 & 4.54 & 162 & 6169 & 5510 & 735 & 1379 & 286 & ⋯ & .434 & .755 & 101 & 2393 & 118 & 57 & 36 & 37 & 31 & 1099\\\\\n",
"\t NYY & 51 & 28.6 & 5.30 & 162 & 6354 & 5594 & 858 & 1463 & 266 & ⋯ & .447 & .785 & 105 & 2498 & 119 & 64 & 18 & 56 & 22 & 1184\\\\\n",
"\t OAK & 54 & 28.7 & 4.56 & 162 & 6126 & 5464 & 739 & 1344 & 305 & ⋯ & .436 & .755 & 104 & 2381 & 129 & 43 & 13 & 40 & 15 & 1075\\\\\n",
"\t PHI & 51 & 26.6 & 4.26 & 162 & 6133 & 5535 & 690 & 1382 & 287 & ⋯ & .409 & .723 & 89 & 2263 & 128 & 47 & 21 & 36 & 25 & 1079\\\\\n",
"\t PIT & 47 & 28.2 & 4.12 & 162 & 6136 & 5458 & 668 & 1331 & 249 & ⋯ & .386 & .704 & 86 & 2105 & 120 & 88 & 42 & 28 & 39 & 1129\\\\\n",
"\t SDP & 52 & 26.2 & 3.73 & 162 & 5954 & 5356 & 604 & 1251 & 227 & ⋯ & .393 & .692 & 83 & 2107 & 99 & 53 & 52 & 33 & 20 & 1037\\\\\n",
"\t SEA & 61 & 29.5 & 4.63 & 162 & 6166 & 5551 & 750 & 1436 & 281 & ⋯ & .424 & .749 & 103 & 2351 & 131 & 78 & 14 & 35 & 31 & 1084\\\\\n",
"\t SFG & 49 & 29.5 & 3.94 & 162 & 6137 & 5551 & 639 & 1382 & 290 & ⋯ & .380 & .689 & 81 & 2112 & 136 & 36 & 31 & 52 & 37 & 1093\\\\\n",
"\t STL & 48 & 28.0 & 4.70 & 162 & 6219 & 5470 & 761 & 1402 & 284 & ⋯ & .426 & .760 & 99 & 2330 & 139 & 65 & 47 & 44 & 36 & 1118\\\\\n",
"\t TBR & 53 & 28.3 & 4.28 & 162 & 6147 & 5478 & 694 & 1340 & 226 & ⋯ & .422 & .739 & 99 & 2314 & 115 & 55 & 16 & 48 & 33 & 1114\\\\\n",
"\t TEX & 51 & 28.3 & 4.93 & 162 & 6122 & 5430 & 799 & 1326 & 255 & ⋯ & .430 & .750 & 91 & 2334 & 110 & 81 & 27 & 39 & 18 & 1015\\\\\n",
"\t TOR & 60 & 30.9 & 4.28 & 162 & 6154 & 5499 & 693 & 1320 & 269 & ⋯ & .412 & .724 & 91 & 2265 & 153 & 51 & 25 & 35 & 12 & 1064\\\\\n",
"\t WSN & 49 & 29.2 & 5.06 & 162 & 6214 & 5553 & 819 & 1477 & 311 & ⋯ & .449 & .782 & 99 & 2495 & 116 & 31 & 43 & 45 & 56 & 1101\\\\\n",
"\\end{tabular}\n"
],
"text/markdown": [
"\n",
"Tm | #Bat | BatAge | R/G | G | PA | AB | R | H | 2B | ⋯ | SLG | OPS | OPS+ | TB | GDP | HBP | SH | SF | IBB | LOB | \n",
"|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|\n",
"| ARI | 45 | 28.3 | 5.01 | 162 | 6224 | 5525 | 812 | 1405 | 314 | ⋯ | .445 | .774 | 94 | 2457 | 106 | 54 | 39 | 27 | 44 | 1118 | \n",
"| ATL | 49 | 28.7 | 4.52 | 162 | 6216 | 5584 | 732 | 1467 | 289 | ⋯ | .412 | .738 | 92 | 2303 | 137 | 66 | 59 | 32 | 57 | 1127 | \n",
"| BAL | 50 | 28.6 | 4.59 | 162 | 6140 | 5650 | 743 | 1469 | 269 | ⋯ | .435 | .747 | 100 | 2458 | 138 | 50 | 10 | 37 | 12 | 1041 | \n",
"| BOS | 49 | 27.3 | 4.85 | 162 | 6338 | 5669 | 785 | 1461 | 302 | ⋯ | .407 | .736 | 92 | 2305 | 141 | 53 | 9 | 36 | 48 | 1134 | \n",
"| CHC | 47 | 27.1 | 5.07 | 162 | 6283 | 5496 | 822 | 1402 | 274 | ⋯ | .437 | .775 | 99 | 2403 | 134 | 82 | 48 | 32 | 54 | 1147 | \n",
"| CHW | 51 | 26.7 | 4.36 | 162 | 6059 | 5513 | 706 | 1412 | 256 | ⋯ | .417 | .731 | 96 | 2300 | 124 | 76 | 35 | 33 | 17 | 1055 | \n",
"| CIN | 47 | 27.1 | 4.65 | 162 | 6213 | 5484 | 753 | 1390 | 249 | ⋯ | .433 | .761 | 97 | 2372 | 116 | 72 | 50 | 42 | 41 | 1135 | \n",
"| CLE | 41 | 28.0 | 5.05 | 162 | 6234 | 5511 | 818 | 1449 | 333 | ⋯ | .449 | .788 | 104 | 2476 | 125 | 50 | 23 | 45 | 30 | 1158 | \n",
"| COL | 41 | 28.3 | 5.09 | 162 | 6201 | 5534 | 824 | 1510 | 293 | ⋯ | .444 | .781 | 90 | 2455 | 143 | 44 | 62 | 41 | 46 | 1088 | \n",
"| DET | 49 | 29.6 | 4.54 | 162 | 6150 | 5556 | 735 | 1435 | 289 | ⋯ | .424 | .748 | 98 | 2355 | 128 | 52 | 11 | 27 | 21 | 1104 | \n",
"| HOU | 46 | 28.8 | 5.53 | 162 | 6271 | 5611 | 896 | 1581 | 346 | ⋯ | .478 | .823 | 123 | 2681 | 139 | 70 | 11 | 61 | 27 | 1094 | \n",
"| KCR | 49 | 28.9 | 4.33 | 162 | 6027 | 5536 | 702 | 1436 | 260 | ⋯ | .420 | .731 | 93 | 2323 | 160 | 45 | 17 | 37 | 19 | 1005 | \n",
"| LAA | 55 | 30.0 | 4.38 | 162 | 6073 | 5415 | 710 | 1314 | 251 | ⋯ | .397 | .712 | 92 | 2151 | 141 | 70 | 17 | 46 | 30 | 1033 | \n",
"| LAD | 52 | 27.9 | 4.75 | 162 | 6191 | 5408 | 770 | 1347 | 312 | ⋯ | .437 | .771 | 104 | 2362 | 119 | 64 | 31 | 38 | 41 | 1146 | \n",
"| MIA | 43 | 28.4 | 4.80 | 162 | 6248 | 5602 | 778 | 1497 | 271 | ⋯ | .431 | .761 | 107 | 2412 | 119 | 67 | 50 | 41 | 48 | 1130 | \n",
"| MIL | 50 | 27.4 | 4.52 | 162 | 6135 | 5467 | 732 | 1363 | 267 | ⋯ | .429 | .751 | 94 | 2346 | 116 | 53 | 42 | 26 | 34 | 1088 | \n",
"| MIN | 52 | 27.0 | 5.03 | 162 | 6261 | 5557 | 815 | 1444 | 286 | ⋯ | .434 | .768 | 104 | 2410 | 105 | 46 | 26 | 39 | 26 | 1147 | \n",
"| NYM | 52 | 28.8 | 4.54 | 162 | 6169 | 5510 | 735 | 1379 | 286 | ⋯ | .434 | .755 | 101 | 2393 | 118 | 57 | 36 | 37 | 31 | 1099 | \n",
"| NYY | 51 | 28.6 | 5.30 | 162 | 6354 | 5594 | 858 | 1463 | 266 | ⋯ | .447 | .785 | 105 | 2498 | 119 | 64 | 18 | 56 | 22 | 1184 | \n",
"| OAK | 54 | 28.7 | 4.56 | 162 | 6126 | 5464 | 739 | 1344 | 305 | ⋯ | .436 | .755 | 104 | 2381 | 129 | 43 | 13 | 40 | 15 | 1075 | \n",
"| PHI | 51 | 26.6 | 4.26 | 162 | 6133 | 5535 | 690 | 1382 | 287 | ⋯ | .409 | .723 | 89 | 2263 | 128 | 47 | 21 | 36 | 25 | 1079 | \n",
"| PIT | 47 | 28.2 | 4.12 | 162 | 6136 | 5458 | 668 | 1331 | 249 | ⋯ | .386 | .704 | 86 | 2105 | 120 | 88 | 42 | 28 | 39 | 1129 | \n",
"| SDP | 52 | 26.2 | 3.73 | 162 | 5954 | 5356 | 604 | 1251 | 227 | ⋯ | .393 | .692 | 83 | 2107 | 99 | 53 | 52 | 33 | 20 | 1037 | \n",
"| SEA | 61 | 29.5 | 4.63 | 162 | 6166 | 5551 | 750 | 1436 | 281 | ⋯ | .424 | .749 | 103 | 2351 | 131 | 78 | 14 | 35 | 31 | 1084 | \n",
"| SFG | 49 | 29.5 | 3.94 | 162 | 6137 | 5551 | 639 | 1382 | 290 | ⋯ | .380 | .689 | 81 | 2112 | 136 | 36 | 31 | 52 | 37 | 1093 | \n",
"| STL | 48 | 28.0 | 4.70 | 162 | 6219 | 5470 | 761 | 1402 | 284 | ⋯ | .426 | .760 | 99 | 2330 | 139 | 65 | 47 | 44 | 36 | 1118 | \n",
"| TBR | 53 | 28.3 | 4.28 | 162 | 6147 | 5478 | 694 | 1340 | 226 | ⋯ | .422 | .739 | 99 | 2314 | 115 | 55 | 16 | 48 | 33 | 1114 | \n",
"| TEX | 51 | 28.3 | 4.93 | 162 | 6122 | 5430 | 799 | 1326 | 255 | ⋯ | .430 | .750 | 91 | 2334 | 110 | 81 | 27 | 39 | 18 | 1015 | \n",
"| TOR | 60 | 30.9 | 4.28 | 162 | 6154 | 5499 | 693 | 1320 | 269 | ⋯ | .412 | .724 | 91 | 2265 | 153 | 51 | 25 | 35 | 12 | 1064 | \n",
"| WSN | 49 | 29.2 | 5.06 | 162 | 6214 | 5553 | 819 | 1477 | 311 | ⋯ | .449 | .782 | 99 | 2495 | 116 | 31 | 43 | 45 | 56 | 1101 | \n",
"\n",
"\n"
],
"text/plain": [
" Tm #Bat BatAge R/G G PA AB R H 2B ⋯ SLG OPS OPS+ TB GDP\n",
"1 ARI 45 28.3 5.01 162 6224 5525 812 1405 314 ⋯ .445 .774 94 2457 106\n",
"2 ATL 49 28.7 4.52 162 6216 5584 732 1467 289 ⋯ .412 .738 92 2303 137\n",
"3 BAL 50 28.6 4.59 162 6140 5650 743 1469 269 ⋯ .435 .747 100 2458 138\n",
"4 BOS 49 27.3 4.85 162 6338 5669 785 1461 302 ⋯ .407 .736 92 2305 141\n",
"5 CHC 47 27.1 5.07 162 6283 5496 822 1402 274 ⋯ .437 .775 99 2403 134\n",
"6 CHW 51 26.7 4.36 162 6059 5513 706 1412 256 ⋯ .417 .731 96 2300 124\n",
"7 CIN 47 27.1 4.65 162 6213 5484 753 1390 249 ⋯ .433 .761 97 2372 116\n",
"8 CLE 41 28.0 5.05 162 6234 5511 818 1449 333 ⋯ .449 .788 104 2476 125\n",
"9 COL 41 28.3 5.09 162 6201 5534 824 1510 293 ⋯ .444 .781 90 2455 143\n",
"10 DET 49 29.6 4.54 162 6150 5556 735 1435 289 ⋯ .424 .748 98 2355 128\n",
"11 HOU 46 28.8 5.53 162 6271 5611 896 1581 346 ⋯ .478 .823 123 2681 139\n",
"12 KCR 49 28.9 4.33 162 6027 5536 702 1436 260 ⋯ .420 .731 93 2323 160\n",
"13 LAA 55 30.0 4.38 162 6073 5415 710 1314 251 ⋯ .397 .712 92 2151 141\n",
"14 LAD 52 27.9 4.75 162 6191 5408 770 1347 312 ⋯ .437 .771 104 2362 119\n",
"15 MIA 43 28.4 4.80 162 6248 5602 778 1497 271 ⋯ .431 .761 107 2412 119\n",
"16 MIL 50 27.4 4.52 162 6135 5467 732 1363 267 ⋯ .429 .751 94 2346 116\n",
"17 MIN 52 27.0 5.03 162 6261 5557 815 1444 286 ⋯ .434 .768 104 2410 105\n",
"18 NYM 52 28.8 4.54 162 6169 5510 735 1379 286 ⋯ .434 .755 101 2393 118\n",
"19 NYY 51 28.6 5.30 162 6354 5594 858 1463 266 ⋯ .447 .785 105 2498 119\n",
"20 OAK 54 28.7 4.56 162 6126 5464 739 1344 305 ⋯ .436 .755 104 2381 129\n",
"21 PHI 51 26.6 4.26 162 6133 5535 690 1382 287 ⋯ .409 .723 89 2263 128\n",
"22 PIT 47 28.2 4.12 162 6136 5458 668 1331 249 ⋯ .386 .704 86 2105 120\n",
"23 SDP 52 26.2 3.73 162 5954 5356 604 1251 227 ⋯ .393 .692 83 2107 99 \n",
"24 SEA 61 29.5 4.63 162 6166 5551 750 1436 281 ⋯ .424 .749 103 2351 131\n",
"25 SFG 49 29.5 3.94 162 6137 5551 639 1382 290 ⋯ .380 .689 81 2112 136\n",
"26 STL 48 28.0 4.70 162 6219 5470 761 1402 284 ⋯ .426 .760 99 2330 139\n",
"27 TBR 53 28.3 4.28 162 6147 5478 694 1340 226 ⋯ .422 .739 99 2314 115\n",
"28 TEX 51 28.3 4.93 162 6122 5430 799 1326 255 ⋯ .430 .750 91 2334 110\n",
"29 TOR 60 30.9 4.28 162 6154 5499 693 1320 269 ⋯ .412 .724 91 2265 153\n",
"30 WSN 49 29.2 5.06 162 6214 5553 819 1477 311 ⋯ .449 .782 99 2495 116\n",
" HBP SH SF IBB LOB \n",
"1 54 39 27 44 1118\n",
"2 66 59 32 57 1127\n",
"3 50 10 37 12 1041\n",
"4 53 9 36 48 1134\n",
"5 82 48 32 54 1147\n",
"6 76 35 33 17 1055\n",
"7 72 50 42 41 1135\n",
"8 50 23 45 30 1158\n",
"9 44 62 41 46 1088\n",
"10 52 11 27 21 1104\n",
"11 70 11 61 27 1094\n",
"12 45 17 37 19 1005\n",
"13 70 17 46 30 1033\n",
"14 64 31 38 41 1146\n",
"15 67 50 41 48 1130\n",
"16 53 42 26 34 1088\n",
"17 46 26 39 26 1147\n",
"18 57 36 37 31 1099\n",
"19 64 18 56 22 1184\n",
"20 43 13 40 15 1075\n",
"21 47 21 36 25 1079\n",
"22 88 42 28 39 1129\n",
"23 53 52 33 20 1037\n",
"24 78 14 35 31 1084\n",
"25 36 31 52 37 1093\n",
"26 65 47 44 36 1118\n",
"27 55 16 48 33 1114\n",
"28 81 27 39 18 1015\n",
"29 51 25 35 12 1064\n",
"30 31 43 45 56 1101"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"bdata = bdata %>% filter(Tm!='LgAvg') %>% filter(Tm!='') %>% filter(Tm!='Tm')\n",
"bdata"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"---\n",
"# Task 1\n",
"---\n",
"\n",
"Use `rvest` to produce a team-level data frame of pitching data for 2017. "
]
},
{
"cell_type": "code",
"execution_count": 68,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# Your answer here (feel free to add cells to complete your answer)\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Webpage scraping - dynamic data\n",
"\n",
"While static data are a common target for web-scraping, dynamic data are even more interesting. These data include information that is only available temporarily, as is common among ocean-themed data portals such as [Marine Traffic](https://www.marinetraffic.com/en/ais/home/centerx:-63.7/centery:44.2/zoom:7) or [MagicSeaweed](https://magicseaweed.com/Lawrencetown-Surf-Report/342/). These websites charge premium users for historial information, but if we're clever (and leave our computer running) we can scrape information dynamically on the fly.\n",
"\n",
"To start, we need to access a dynamic page of interest:"
]
},
{
"cell_type": "code",
"execution_count": 69,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# Grab webpage\n",
"ltown = read_html(\"https://magicseaweed.com/Lawrencetown-Surf-Report/342/\")"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Here we are given a daily surf report, a table in the middle of the page that summarizes swell information in various 3 hour bins. To start lets see what the table operators give us:"
]
},
{
"cell_type": "code",
"execution_count": 71,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<table>\n",
"<thead><tr><th scope=col>X1</th><th scope=col>X2</th><th scope=col>X3</th></tr></thead>\n",
"<tbody>\n",
"\t<tr><td>Low </td><td>12:34AM</td><td>1.57ft </td></tr>\n",
"\t<tr><td>High </td><td>6:30AM </td><td>5.51ft </td></tr>\n",
"\t<tr><td>Low </td><td>1:08PM </td><td>1.71ft </td></tr>\n",
"\t<tr><td>High </td><td>6:46PM </td><td>5.22ft </td></tr>\n",
"</tbody>\n",
"</table>\n"
],
"text/latex": [
"\\begin{tabular}{r|lll}\n",
" X1 & X2 & X3\\\\\n",
"\\hline\n",
"\t Low & 12:34AM & 1.57ft \\\\\n",
"\t High & 6:30AM & 5.51ft \\\\\n",
"\t Low & 1:08PM & 1.71ft \\\\\n",
"\t High & 6:46PM & 5.22ft \\\\\n",
"\\end{tabular}\n"
],
"text/markdown": [
"\n",
"X1 | X2 | X3 | \n",
"|---|---|---|---|\n",
"| Low | 12:34AM | 1.57ft | \n",
"| High | 6:30AM | 5.51ft | \n",
"| Low | 1:08PM | 1.71ft | \n",
"| High | 6:46PM | 5.22ft | \n",
"\n",
"\n"
],
"text/plain": [
" X1 X2 X3 \n",
"1 Low 12:34AM 1.57ft\n",
"2 High 6:30AM 5.51ft\n",
"3 Low 1:08PM 1.71ft\n",
"4 High 6:46PM 5.22ft"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# Pipe in selector\n",
"ltown %>% html_nodes('table') %>% .[[1]] %>% html_table()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"So the first table here appears to be for tides, with low/high, time of event, and tide height listed. Looking further:"
]
},
{
"cell_type": "code",
"execution_count": 72,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<table>\n",
"<thead><tr><th scope=col>X1</th><th scope=col>X2</th></tr></thead>\n",
"<tbody>\n",
"\t<tr><td>First Light</td><td>7:05AM </td></tr>\n",
"\t<tr><td>Sunrise </td><td>7:35AM </td></tr>\n",
"\t<tr><td>Sunset </td><td>6:19PM </td></tr>\n",
"\t<tr><td>Last Light </td><td>6:49PM </td></tr>\n",
"</tbody>\n",
"</table>\n"
],
"text/latex": [
"\\begin{tabular}{r|ll}\n",
" X1 & X2\\\\\n",
"\\hline\n",
"\t First Light & 7:05AM \\\\\n",
"\t Sunrise & 7:35AM \\\\\n",
"\t Sunset & 6:19PM \\\\\n",
"\t Last Light & 6:49PM \\\\\n",
"\\end{tabular}\n"
],
"text/markdown": [
"\n",
"X1 | X2 | \n",
"|---|---|---|---|\n",
"| First Light | 7:05AM | \n",
"| Sunrise | 7:35AM | \n",
"| Sunset | 6:19PM | \n",
"| Last Light | 6:49PM | \n",
"\n",
"\n"
],
"text/plain": [
" X1 X2 \n",
"1 First Light 7:05AM\n",
"2 Sunrise 7:35AM\n",
"3 Sunset 6:19PM\n",
"4 Last Light 6:49PM"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"ltown %>% html_nodes('table') %>% .[[2]] %>% html_table()"
]
},
{
"cell_type": "code",
"execution_count": 73,
"metadata": {},
"outputs": [
{
"ename": "ERROR",
"evalue": "Error: Table has inconsistent number of columns. Do you want fill = TRUE?\n",
"output_type": "error",
"traceback": [
"Error: Table has inconsistent number of columns. Do you want fill = TRUE?\nTraceback:\n",
"1. ltown %>% html_nodes(\"table\") %>% .[[3]] %>% html_table()",
"2. withVisible(eval(quote(`_fseq`(`_lhs`)), env, env))",
"3. eval(quote(`_fseq`(`_lhs`)), env, env)",
"4. eval(quote(`_fseq`(`_lhs`)), env, env)",
"5. `_fseq`(`_lhs`)",
"6. freduce(value, `_function_list`)",
"7. withVisible(function_list[[k]](value))",
"8. function_list[[k]](value)",
"9. html_table(.)",
"10. html_table.xml_node(.)",
"11. stop(\"Table has inconsistent number of columns. \", \"Do you want fill = TRUE?\", \n . call. = FALSE)"
]
}
],
"source": [
"ltown %>% html_nodes('table') %>% .[[3]] %>% html_table()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Hmm...not seeing the table we want, let's use SelectorGadget to see what these various cells look like:"
]
},
{
"cell_type": "code",
"execution_count": 74,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"{xml_nodeset (135)}\n",
" [1] <tr>\\n<td><strong>Low</strong></td> <td>12:34AM</td> <td class=\"text-rig ...\n",
" [2] <tr>\\n<td><strong>High</strong></td> <td> 6:30AM</td> <td class=\"text-ri ...\n",
" [3] <tr>\\n<td><strong>Low</strong></td> <td> 1:08PM</td> <td class=\"text-rig ...\n",
" [4] <tr>\\n<td><strong>High</strong></td> <td> 6:46PM</td> <td class=\"text-ri ...\n",
" [5] <tr>\\n<td><strong>First Light</strong></td> <td class=\"text-right\"> 7:05 ...\n",
" [6] <tr>\\n<td><strong>Sunrise</strong></td> <td class=\"text-right\"> 7:35AM</ ...\n",
" [7] <tr>\\n<td><strong>Sunset</strong></td> <td class=\"text-right\"> 6:19PM</t ...\n",
" [8] <tr>\\n<td><strong>Last Light</strong></td> <td class=\"text-right\"> 6:49P ...\n",
" [9] <tr>\\n<th></th> <th class=\"msw-fc-s text-center\"> <a class=\"msw-fc-l ...\n",
"[10] <tr class=\"tbody-title\">\\n<th class=\"row-title background-gray-lighter\" ...\n",
"[11] <tr data-timestamp=\"1540090800\" data-date=\"72110\" data-forecast-day=\"1\" ...\n",
"[12] <tr data-timestamp=\"1540101600\" data-date=\"72110\" data-forecast-day=\"1\" ...\n",
"[13] <tr data-timestamp=\"1540112400\" data-date=\"72110\" data-forecast-day=\"1\" ...\n",
"[14] <tr data-timestamp=\"1540123200\" data-date=\"72110\" data-forecast-day=\"1\" ...\n",
"[15] <tr data-timestamp=\"1540134000\" data-date=\"72110\" data-forecast-day=\"1\" ...\n",
"[16] <tr data-timestamp=\"1540144800\" data-date=\"72110\" data-forecast-day=\"1\" ...\n",
"[17] <tr data-timestamp=\"1540155600\" data-date=\"72110\" data-forecast-day=\"1\" ...\n",
"[18] <tr data-timestamp=\"1540166400\" data-date=\"72110\" data-forecast-day=\"1\" ...\n",
"[19] <tr class=\"background-clear msw-js-tide\" data-date=\"72110\" data-filter=\" ...\n",
"[20] <tr>\\n<td><strong>Low</strong></td> <td>12:34AM</td> <td class=\"text-rig ...\n",
"..."
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"ltown %>% html_nodes('tr')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"This looks a little more promising, let's see what's behind each of those 135 nodes:"
]
},
{
"cell_type": "code",
"execution_count": 92,
"metadata": {
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Low</strong></td>\n",
"[2] <td>12:34AM</td>\n",
"[3] <td class=\"text-right\">1.57ft</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>High</strong></td>\n",
"[2] <td> 6:30AM</td>\n",
"[3] <td class=\"text-right\">5.51ft</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Low</strong></td>\n",
"[2] <td> 1:08PM</td>\n",
"[3] <td class=\"text-right\">1.71ft</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>High</strong></td>\n",
"[2] <td> 6:46PM</td>\n",
"[3] <td class=\"text-right\">5.22ft</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>First Light</strong></td>\n",
"[2] <td class=\"text-right\"> 7:05AM</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Sunrise</strong></td>\n",
"[2] <td class=\"text-right\"> 7:35AM</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Sunset</strong></td>\n",
"[2] <td class=\"text-right\"> 6:19PM</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Last Light</strong></td>\n",
"[2] <td class=\"text-right\"> 6:49PM</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <th></th>\n",
"[2] <th class=\"msw-fc-s text-center\"> <a class=\"msw-fc-l table-th-link\" titl ...\n",
"[3] <th class=\"msw-fc-r\"> <a class=\"msw-fc-l table-th-link\" title=\"About Our ...\n",
"[4] <th class=\"msw-fc-fps msw-fc-ps text-center\" colspan=\"3\"> <a class=\"msw- ...\n",
"[5] <th class=\"msw-fc-ss msw-fc-lss table-forecast-sub-swells text-center\" co ...\n",
"[6] <th class=\"msw-fc-w text-center\" colspan=\"2\"> <a class=\"msw-fc-l table-t ...\n",
"[7] <th class=\"msw-fc-we text-center \" colspan=\"2\" data-filter=\"weather\"> <a ...\n",
"[8] <th class=\"msw-fc-p text-center \" data-filter=\"prob\"> <a class=\"msw-fc-l ...\n",
"{xml_node}\n",
"<tr class=\"tbody-title\">\n",
"[1] <th class=\"row-title background-gray-lighter\" colspan=\"22\" data-full-widt ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540090800\" data-date=\"72110\" data-forecast-day=\"1\" data-date-anchor=\"Sunday2110\" class=\" is-first row-hightlight\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap background-gray-lighter\"> <ul ...\n",
" [4] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [5] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lightest\" title=\"S ...\n",
" [7] <td class=\"background-gray-lighter table-forecast-sub-swells\" colspan=\"6 ...\n",
" [8] <td class=\"text-center table-forecast-wind td-nowrap background-gray-lig ...\n",
" [9] <td class=\"text-center last msw-js-tooltip td-square background-danger\" ...\n",
"[10] <td class=\"text-center background-gray-lighter\" data-filter=\"weather\" ti ...\n",
"[11] <td class=\"text-center background-gray-lighter\"> <h5 class=\"nomargin fon ...\n",
"[12] <td class=\"text-center flash probability background-gray-lighter\" data-f ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540101600\" data-date=\"72110\" data-forecast-day=\"1\" data-date-anchor=\"Sunday2110\" class=\" is-first row-hightlight\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap background-gray-lighter\"> <ul ...\n",
" [4] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [5] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lightest\" title=\"S ...\n",
" [7] <td class=\"background-gray-lighter table-forecast-sub-swells\" colspan=\"6 ...\n",
" [8] <td class=\"text-center table-forecast-wind td-nowrap background-gray-lig ...\n",
" [9] <td class=\"text-center last msw-js-tooltip td-square background-success\" ...\n",
"[10] <td class=\"text-center background-gray-lighter\" data-filter=\"weather\" ti ...\n",
"[11] <td class=\"text-center background-gray-lighter\"> <h5 class=\"nomargin fon ...\n",
"[12] <td class=\"text-center flash probability background-gray-lighter\" data-f ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540112400\" data-date=\"72110\" data-forecast-day=\"1\" data-date-anchor=\"Sunday2110\" class=\" is-first row-hightlight\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap background-gray-lighter\"> <ul ...\n",
" [4] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [5] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lightest\" title=\"S ...\n",
" [7] <td class=\"background-gray-lighter table-forecast-sub-swells\" colspan=\"6 ...\n",
" [8] <td class=\"text-center table-forecast-wind td-nowrap background-gray-lig ...\n",
" [9] <td class=\"text-center last msw-js-tooltip td-square background-success\" ...\n",
"[10] <td class=\"text-center background-gray-lighter\" data-filter=\"weather\" ti ...\n",
"[11] <td class=\"text-center background-gray-lighter\"> <h5 class=\"nomargin fon ...\n",
"[12] <td class=\"text-center flash probability background-gray-lighter\" data-f ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540123200\" data-date=\"72110\" data-forecast-day=\"1\" data-date-anchor=\"Sunday2110\" class=\" is-first row-hightlight\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap background-gray-lighter\"> <ul ...\n",
" [4] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [5] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lightest\" title=\"S ...\n",
" [7] <td class=\"background-gray-lighter table-forecast-sub-swells\" colspan=\"6 ...\n",
" [8] <td class=\"text-center table-forecast-wind td-nowrap background-gray-lig ...\n",
" [9] <td class=\"text-center last msw-js-tooltip td-square background-success\" ...\n",
"[10] <td class=\"text-center background-gray-lighter\" data-filter=\"weather\" ti ...\n",
"[11] <td class=\"text-center background-gray-lighter\"> <h5 class=\"nomargin fon ...\n",
"[12] <td class=\"text-center flash probability background-gray-lighter\" data-f ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540134000\" data-date=\"72110\" data-forecast-day=\"1\" data-date-anchor=\"Sunday2110\" class=\" is-first row-hightlight\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap background-gray-lighter\"> <ul ...\n",
" [4] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [5] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lightest\" title=\"S ...\n",
" [7] <td class=\"background-gray-lighter table-forecast-sub-swells\" colspan=\"6 ...\n",
" [8] <td class=\"text-center table-forecast-wind td-nowrap background-gray-lig ...\n",
" [9] <td class=\"text-center last msw-js-tooltip td-square background-success\" ...\n",
"[10] <td class=\"text-center background-gray-lighter\" data-filter=\"weather\" ti ...\n",
"[11] <td class=\"text-center background-gray-lighter\"> <h5 class=\"nomargin fon ...\n",
"[12] <td class=\"text-center flash probability background-gray-lighter\" data-f ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540144800\" data-date=\"72110\" data-forecast-day=\"1\" data-date-anchor=\"Sunday2110\" class=\" is-first row-hightlight\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap background-gray-lighter\"> <ul ...\n",
" [4] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [5] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lightest\" title=\"S ...\n",
" [7] <td class=\"background-gray-lighter table-forecast-sub-swells\" colspan=\"6 ...\n",
" [8] <td class=\"text-center table-forecast-wind td-nowrap background-gray-lig ...\n",
" [9] <td class=\"text-center last msw-js-tooltip td-square background-success\" ...\n",
"[10] <td class=\"text-center background-gray-lighter\" data-filter=\"weather\" ti ...\n",
"[11] <td class=\"text-center background-gray-lighter\"> <h5 class=\"nomargin fon ...\n",
"[12] <td class=\"text-center flash probability background-gray-lighter\" data-f ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540155600\" data-date=\"72110\" data-forecast-day=\"1\" data-date-anchor=\"Sunday2110\" class=\" is-first row-hightlight\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap background-gray-lighter\"> <ul ...\n",
" [4] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [5] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lightest\" title=\"S ...\n",
" [7] <td class=\"text-center background-gray-lighter table-forecast-sub-swells ...\n",
" [8] <td class=\"text-center background-gray-lighter table-forecast-sub-swells ...\n",
" [9] <td class=\"text-center msw-js-tooltip background-gray-lighter table-fore ...\n",
"[10] <td class=\"background-gray-lighter table-forecast-sub-swells\" colspan=\"3 ...\n",
"[11] <td class=\"text-center table-forecast-wind td-nowrap background-gray-lig ...\n",
"[12] <td class=\"text-center last msw-js-tooltip td-square background-success\" ...\n",
"[13] <td class=\"text-center background-gray-lighter\" data-filter=\"weather\" ti ...\n",
"[14] <td class=\"text-center background-gray-lighter\"> <h5 class=\"nomargin fon ...\n",
"[15] <td class=\"text-center flash probability background-gray-lighter\" data-f ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540166400\" data-date=\"72110\" data-forecast-day=\"1\" data-date-anchor=\"Sunday2110\" class=\" is-first row-hightlight\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap background-gray-lighter\"> <ul ...\n",
" [4] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [5] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lightest\" title=\"S ...\n",
" [7] <td class=\"text-center background-gray-lighter table-forecast-sub-swells ...\n",
" [8] <td class=\"text-center background-gray-lighter table-forecast-sub-swells ...\n",
" [9] <td class=\"text-center msw-js-tooltip background-gray-lighter table-fore ...\n",
"[10] <td class=\"background-gray-lighter table-forecast-sub-swells\" colspan=\"3 ...\n",
"[11] <td class=\"text-center table-forecast-wind td-nowrap background-gray-lig ...\n",
"[12] <td class=\"text-center last msw-js-tooltip td-square background-success\" ...\n",
"[13] <td class=\"text-center background-gray-lighter\" data-filter=\"weather\" ti ...\n",
"[14] <td class=\"text-center background-gray-lighter\"> <h5 class=\"nomargin fon ...\n",
"[15] <td class=\"text-center flash probability background-gray-lighter\" data-f ...\n",
"{xml_node}\n",
"<tr class=\"background-clear msw-js-tide\" data-date=\"72110\" data-filter=\"tides\">\n",
"[1] <td colspan=\"22\" data-full-width class=\"nopadding background-clear\"> <div ...\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Low</strong></td>\n",
"[2] <td>12:34AM</td>\n",
"[3] <td class=\"text-right\">1.57ft</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>High</strong></td>\n",
"[2] <td> 6:30AM</td>\n",
"[3] <td class=\"text-right\">5.51ft</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Low</strong></td>\n",
"[2] <td> 1:08PM</td>\n",
"[3] <td class=\"text-right\">1.71ft</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>High</strong></td>\n",
"[2] <td> 6:46PM</td>\n",
"[3] <td class=\"text-right\">5.22ft</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>First Light</strong></td>\n",
"[2] <td class=\"text-right\"> 7:05AM</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Sunrise</strong></td>\n",
"[2] <td class=\"text-right\"> 7:35AM</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Sunset</strong></td>\n",
"[2] <td class=\"text-right\"> 6:19PM</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Last Light</strong></td>\n",
"[2] <td class=\"text-right\"> 6:49PM</td>\n",
"{xml_node}\n",
"<tr class=\"tbody-title\">\n",
"[1] <th class=\"row-title background-gray-lighter\" colspan=\"22\" data-full-widt ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540177200\" data-date=\"12210\" data-forecast-day=\"2\" data-date-anchor=\"Monday2210\" class=\" hide msw-js-fc-hide\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"S ...\n",
" [7] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [8] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [9] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[10] <td class=\" table-forecast-sub-swells\" colspan=\"3\"></td>\n",
"[11] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
"[12] <td class=\"text-center last msw-js-tooltip td-square background-success\" ...\n",
"[13] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[14] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">46<s ...\n",
"[15] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540188000\" data-date=\"12210\" data-forecast-day=\"2\" data-date-anchor=\"Monday2210\" class=\" hide msw-js-fc-hide\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"S ...\n",
" [7] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [8] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [9] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[10] <td class=\" table-forecast-sub-swells\" colspan=\"3\"></td>\n",
"[11] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
"[12] <td class=\"text-center last msw-js-tooltip td-square background-success\" ...\n",
"[13] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[14] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">42<s ...\n",
"[15] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540198800\" data-date=\"12210\" data-forecast-day=\"2\" data-date-anchor=\"Monday2210\" class=\"\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"S ...\n",
" [7] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [8] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [9] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[10] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
"[11] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
"[12] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[13] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
"[14] <td class=\"text-center last msw-js-tooltip td-square background-success\" ...\n",
"[15] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[16] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">39<s ...\n",
"[17] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540209600\" data-date=\"12210\" data-forecast-day=\"2\" data-date-anchor=\"Monday2210\" class=\" hide msw-js-fc-hide\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"S ...\n",
" [7] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [8] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [9] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[10] <td class=\" table-forecast-sub-swells\" colspan=\"3\"></td>\n",
"[11] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
"[12] <td class=\"text-center last msw-js-tooltip td-square background-warning\" ...\n",
"[13] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[14] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">38<s ...\n",
"[15] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540220400\" data-date=\"12210\" data-forecast-day=\"2\" data-date-anchor=\"Monday2210\" class=\"\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"S ...\n",
" [7] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [8] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [9] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[10] <td class=\" table-forecast-sub-swells\" colspan=\"3\"></td>\n",
"[11] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
"[12] <td class=\"text-center last msw-js-tooltip td-square background-warning\" ...\n",
"[13] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[14] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">41<s ...\n",
"[15] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540231200\" data-date=\"12210\" data-forecast-day=\"2\" data-date-anchor=\"Monday2210\" class=\" hide msw-js-fc-hide\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"SS ...\n",
" [7] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [8] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [9] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[10] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
"[11] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
"[12] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[13] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
"[14] <td class=\"text-center last msw-js-tooltip td-square background-danger\" ...\n",
"[15] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[16] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">45<s ...\n",
"[17] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540242000\" data-date=\"12210\" data-forecast-day=\"2\" data-date-anchor=\"Monday2210\" class=\"\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"SS ...\n",
" [7] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [8] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [9] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[10] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
"[11] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
"[12] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[13] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
"[14] <td class=\"text-center last msw-js-tooltip td-square background-warning\" ...\n",
"[15] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[16] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">45<s ...\n",
"[17] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540252800\" data-date=\"12210\" data-forecast-day=\"2\" data-date-anchor=\"Monday2210\" class=\" hide msw-js-fc-hide\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"SS ...\n",
" [7] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [8] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [9] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[10] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
"[11] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
"[12] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[13] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
"[14] <td class=\"text-center last msw-js-tooltip td-square background-danger\" ...\n",
"[15] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[16] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">43<s ...\n",
"[17] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr class=\"background-clear msw-js-tide hide msw-js-fc-hide\" data-date=\"12210\" data-filter=\"tides\">\n",
"[1] <td colspan=\"22\" data-full-width class=\"nopadding\"> <div class=\"row msw-t ...\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Low</strong></td>\n",
"[2] <td> 1:16AM</td>\n",
"[3] <td class=\"text-right\">1.51ft</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>High</strong></td>\n",
"[2] <td> 7:12AM</td>\n",
"[3] <td class=\"text-right\">5.71ft</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Low</strong></td>\n",
"[2] <td> 1:48PM</td>\n",
"[3] <td class=\"text-right\">1.51ft</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>High</strong></td>\n",
"[2] <td> 7:31PM</td>\n",
"[3] <td class=\"text-right\">5.41ft</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>First Light</strong></td>\n",
"[2] <td class=\"text-right\"> 7:07AM</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Sunrise</strong></td>\n",
"[2] <td class=\"text-right\"> 7:36AM</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Sunset</strong></td>\n",
"[2] <td class=\"text-right\"> 6:17PM</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Last Light</strong></td>\n",
"[2] <td class=\"text-right\"> 6:47PM</td>\n",
"{xml_node}\n",
"<tr class=\"tbody-title\">\n",
"[1] <th class=\"row-title background-gray-lighter\" colspan=\"22\" data-full-widt ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540263600\" data-date=\"22310\" data-forecast-day=\"3\" data-date-anchor=\"Tuesday2310\" class=\" hide msw-js-fc-hide\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"SS ...\n",
" [7] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [8] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [9] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[10] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
"[11] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
"[12] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[13] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
"[14] <td class=\"text-center last msw-js-tooltip td-square background-danger\" ...\n",
"[15] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[16] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">45<s ...\n",
"[17] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540274400\" data-date=\"22310\" data-forecast-day=\"3\" data-date-anchor=\"Tuesday2310\" class=\" hide msw-js-fc-hide\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"SE ...\n",
" [7] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [8] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [9] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[10] <td class=\" table-forecast-sub-swells\" colspan=\"3\"></td>\n",
"[11] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
"[12] <td class=\"text-center last msw-js-tooltip td-square background-warning\" ...\n",
"[13] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[14] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">45<s ...\n",
"[15] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540285200\" data-date=\"22310\" data-forecast-day=\"3\" data-date-anchor=\"Tuesday2310\" class=\"\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"SE ...\n",
" [7] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [8] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [9] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[10] <td class=\" table-forecast-sub-swells\" colspan=\"3\"></td>\n",
"[11] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
"[12] <td class=\"text-center last msw-js-tooltip td-square background-warning\" ...\n",
"[13] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[14] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">44<s ...\n",
"[15] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540296000\" data-date=\"22310\" data-forecast-day=\"3\" data-date-anchor=\"Tuesday2310\" class=\" hide msw-js-fc-hide\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"SE ...\n",
" [7] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [8] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [9] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[10] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
"[11] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
"[12] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[13] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
"[14] <td class=\"text-center last msw-js-tooltip td-square background-success\" ...\n",
"[15] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[16] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">46<s ...\n",
"[17] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540306800\" data-date=\"22310\" data-forecast-day=\"3\" data-date-anchor=\"Tuesday2310\" class=\"\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"SW ...\n",
" [7] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [8] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [9] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[10] <td class=\" table-forecast-sub-swells\" colspan=\"3\"></td>\n",
"[11] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
"[12] <td class=\"text-center last msw-js-tooltip td-square background-danger\" ...\n",
"[13] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[14] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">52<s ...\n",
"[15] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540317600\" data-date=\"22310\" data-forecast-day=\"3\" data-date-anchor=\"Tuesday2310\" class=\" hide msw-js-fc-hide\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"S ...\n",
" [7] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [8] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [9] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[10] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
"[11] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
"[12] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[13] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
"[14] <td class=\"text-center last msw-js-tooltip td-square background-danger\" ...\n",
"[15] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[16] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">52<s ...\n",
"[17] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540328400\" data-date=\"22310\" data-forecast-day=\"3\" data-date-anchor=\"Tuesday2310\" class=\"\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"SS ...\n",
" [7] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [8] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [9] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[10] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
"[11] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
"[12] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[13] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
"[14] <td class=\"text-center last msw-js-tooltip td-square background-danger\" ...\n",
"[15] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[16] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">52<s ...\n",
"[17] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540339200\" data-date=\"22310\" data-forecast-day=\"3\" data-date-anchor=\"Tuesday2310\" class=\" hide msw-js-fc-hide\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"SS ...\n",
" [7] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [8] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [9] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[10] <td class=\" table-forecast-sub-swells\" colspan=\"3\"></td>\n",
"[11] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
"[12] <td class=\"text-center last msw-js-tooltip td-square background-danger\" ...\n",
"[13] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[14] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">53<s ...\n",
"[15] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr class=\"background-clear msw-js-tide hide msw-js-fc-hide\" data-date=\"22310\" data-filter=\"tides\">\n",
"[1] <td colspan=\"22\" data-full-width class=\"nopadding\"> <div class=\"row msw-t ...\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Low</strong></td>\n",
"[2] <td> 1:57AM</td>\n",
"[3] <td class=\"text-right\">1.44ft</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>High</strong></td>\n",
"[2] <td> 7:52AM</td>\n",
"[3] <td class=\"text-right\">5.87ft</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Low</strong></td>\n",
"[2] <td> 2:27PM</td>\n",
"[3] <td class=\"text-right\">1.34ft</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>High</strong></td>\n",
"[2] <td> 8:14PM</td>\n",
"[3] <td class=\"text-right\">5.58ft</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>First Light</strong></td>\n",
"[2] <td class=\"text-right\"> 7:08AM</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Sunrise</strong></td>\n",
"[2] <td class=\"text-right\"> 7:38AM</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Sunset</strong></td>\n",
"[2] <td class=\"text-right\"> 6:16PM</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Last Light</strong></td>\n",
"[2] <td class=\"text-right\"> 6:45PM</td>\n",
"{xml_node}\n",
"<tr class=\"tbody-title\">\n",
"[1] <th class=\"row-title background-gray-lighter\" colspan=\"22\" data-full-widt ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540350000\" data-date=\"32410\" data-forecast-day=\"4\" data-date-anchor=\"Wednesday2410\" class=\" hide msw-js-fc-hide\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"SS ...\n",
" [7] <td class=\" table-forecast-sub-swells\" colspan=\"6\"></td>\n",
" [8] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
" [9] <td class=\"text-center last msw-js-tooltip td-square background-danger\" ...\n",
"[10] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[11] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">57<s ...\n",
"[12] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540360800\" data-date=\"32410\" data-forecast-day=\"4\" data-date-anchor=\"Wednesday2410\" class=\" hide msw-js-fc-hide\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"SS ...\n",
" [7] <td class=\" table-forecast-sub-swells\" colspan=\"6\"></td>\n",
" [8] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
" [9] <td class=\"text-center last msw-js-tooltip td-square background-danger\" ...\n",
"[10] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[11] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">58<s ...\n",
"[12] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540371600\" data-date=\"32410\" data-forecast-day=\"4\" data-date-anchor=\"Wednesday2410\" class=\"\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"SS ...\n",
" [7] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [8] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [9] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[10] <td class=\" table-forecast-sub-swells\" colspan=\"3\"></td>\n",
"[11] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
"[12] <td class=\"text-center last msw-js-tooltip td-square background-danger\" ...\n",
"[13] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[14] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">57<s ...\n",
"[15] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540382400\" data-date=\"32410\" data-forecast-day=\"4\" data-date-anchor=\"Wednesday2410\" class=\" hide msw-js-fc-hide\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"S ...\n",
" [7] <td class=\" table-forecast-sub-swells\" colspan=\"6\"></td>\n",
" [8] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
" [9] <td class=\"text-center last msw-js-tooltip td-square background-danger\" ...\n",
"[10] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[11] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">55<s ...\n",
"[12] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540393200\" data-date=\"32410\" data-forecast-day=\"4\" data-date-anchor=\"Wednesday2410\" class=\"\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"S ...\n",
" [7] <td class=\" table-forecast-sub-swells\" colspan=\"6\"></td>\n",
" [8] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
" [9] <td class=\"text-center last msw-js-tooltip td-square background-danger\" ...\n",
"[10] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[11] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">55<s ...\n",
"[12] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540404000\" data-date=\"32410\" data-forecast-day=\"4\" data-date-anchor=\"Wednesday2410\" class=\" hide msw-js-fc-hide\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"SS ...\n",
" [7] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [8] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [9] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[10] <td class=\" table-forecast-sub-swells\" colspan=\"3\"></td>\n",
"[11] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
"[12] <td class=\"text-center last msw-js-tooltip td-square background-danger\" ...\n",
"[13] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[14] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">55<s ...\n",
"[15] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540414800\" data-date=\"32410\" data-forecast-day=\"4\" data-date-anchor=\"Wednesday2410\" class=\"\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"SW ...\n",
" [7] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [8] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [9] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[10] <td class=\" table-forecast-sub-swells\" colspan=\"3\"></td>\n",
"[11] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
"[12] <td class=\"text-center last msw-js-tooltip td-square background-danger\" ...\n",
"[13] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[14] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">53<s ...\n",
"[15] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540425600\" data-date=\"32410\" data-forecast-day=\"4\" data-date-anchor=\"Wednesday2410\" class=\" hide msw-js-fc-hide\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"SW ...\n",
" [7] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [8] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [9] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[10] <td class=\" table-forecast-sub-swells\" colspan=\"3\"></td>\n",
"[11] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
"[12] <td class=\"text-center last msw-js-tooltip td-square background-warning\" ...\n",
"[13] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[14] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">50<s ...\n",
"[15] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr class=\"background-clear msw-js-tide hide msw-js-fc-hide\" data-date=\"32410\" data-filter=\"tides\">\n",
"[1] <td colspan=\"22\" data-full-width class=\"nopadding\"> <div class=\"row msw-t ...\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Low</strong></td>\n",
"[2] <td> 2:36AM</td>\n",
"[3] <td class=\"text-right\">1.44ft</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>High</strong></td>\n",
"[2] <td> 8:31AM</td>\n",
"[3] <td class=\"text-right\">6ft</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Low</strong></td>\n",
"[2] <td> 3:06PM</td>\n",
"[3] <td class=\"text-right\">1.21ft</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>High</strong></td>\n",
"[2] <td> 8:57PM</td>\n",
"[3] <td class=\"text-right\">5.74ft</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>First Light</strong></td>\n",
"[2] <td class=\"text-right\"> 7:09AM</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Sunrise</strong></td>\n",
"[2] <td class=\"text-right\"> 7:39AM</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Sunset</strong></td>\n",
"[2] <td class=\"text-right\"> 6:14PM</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Last Light</strong></td>\n",
"[2] <td class=\"text-right\"> 6:44PM</td>\n",
"{xml_node}\n",
"<tr class=\"tbody-title\">\n",
"[1] <th class=\"row-title background-gray-lighter\" colspan=\"22\" data-full-widt ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540436400\" data-date=\"42510\" data-forecast-day=\"5\" data-date-anchor=\"Thursday2510\" class=\" hide msw-js-fc-hide\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"SW ...\n",
" [7] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [8] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [9] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[10] <td class=\" table-forecast-sub-swells\" colspan=\"3\"></td>\n",
"[11] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
"[12] <td class=\"text-center last msw-js-tooltip td-square background-danger\" ...\n",
"[13] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[14] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">48<s ...\n",
"[15] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540447200\" data-date=\"42510\" data-forecast-day=\"5\" data-date-anchor=\"Thursday2510\" class=\" hide msw-js-fc-hide\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"SW ...\n",
" [7] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [8] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [9] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[10] <td class=\" table-forecast-sub-swells\" colspan=\"3\"></td>\n",
"[11] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
"[12] <td class=\"text-center last msw-js-tooltip td-square background-warning\" ...\n",
"[13] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[14] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">45<s ...\n",
"[15] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540458000\" data-date=\"42510\" data-forecast-day=\"5\" data-date-anchor=\"Thursday2510\" class=\"\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"WS ...\n",
" [7] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [8] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [9] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[10] <td class=\" table-forecast-sub-swells\" colspan=\"3\"></td>\n",
"[11] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
"[12] <td class=\"text-center last msw-js-tooltip td-square background-warning\" ...\n",
"[13] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[14] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">43<s ...\n",
"[15] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540468800\" data-date=\"42510\" data-forecast-day=\"5\" data-date-anchor=\"Thursday2510\" class=\" hide msw-js-fc-hide\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"SW ...\n",
" [7] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [8] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [9] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[10] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
"[11] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
"[12] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[13] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
"[14] <td class=\"text-center last msw-js-tooltip td-square background-warning\" ...\n",
"[15] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[16] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">42<s ...\n",
"[17] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540479600\" data-date=\"42510\" data-forecast-day=\"5\" data-date-anchor=\"Thursday2510\" class=\"\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"ES ...\n",
" [7] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [8] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [9] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[10] <td class=\" table-forecast-sub-swells\" colspan=\"3\"></td>\n",
"[11] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
"[12] <td class=\"text-center last msw-js-tooltip td-square background-success\" ...\n",
"[13] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[14] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">44<s ...\n",
"[15] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540490400\" data-date=\"42510\" data-forecast-day=\"5\" data-date-anchor=\"Thursday2510\" class=\" hide msw-js-fc-hide\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"ES ...\n",
" [7] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [8] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [9] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[10] <td class=\" table-forecast-sub-swells\" colspan=\"3\"></td>\n",
"[11] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
"[12] <td class=\"text-center last msw-js-tooltip td-square background-success\" ...\n",
"[13] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[14] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">47<s ...\n",
"[15] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540501200\" data-date=\"42510\" data-forecast-day=\"5\" data-date-anchor=\"Thursday2510\" class=\"\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"ES ...\n",
" [7] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [8] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [9] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[10] <td class=\" table-forecast-sub-swells\" colspan=\"3\"></td>\n",
"[11] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
"[12] <td class=\"text-center last msw-js-tooltip td-square background-success\" ...\n",
"[13] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[14] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">46<s ...\n",
"[15] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540512000\" data-date=\"42510\" data-forecast-day=\"5\" data-date-anchor=\"Thursday2510\" class=\" hide msw-js-fc-hide\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"ES ...\n",
" [7] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [8] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [9] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[10] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
"[11] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
"[12] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[13] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
"[14] <td class=\"text-center last msw-js-tooltip td-square background-success\" ...\n",
"[15] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[16] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">42<s ...\n",
"[17] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr class=\"background-clear msw-js-tide hide msw-js-fc-hide\" data-date=\"42510\" data-filter=\"tides\">\n",
"[1] <td colspan=\"22\" data-full-width class=\"nopadding\"> <div class=\"row msw-t ...\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Low</strong></td>\n",
"[2] <td> 3:16AM</td>\n",
"[3] <td class=\"text-right\">1.48ft</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>High</strong></td>\n",
"[2] <td> 9:10AM</td>\n",
"[3] <td class=\"text-right\">6.07ft</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Low</strong></td>\n",
"[2] <td> 3:45PM</td>\n",
"[3] <td class=\"text-right\">1.15ft</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>High</strong></td>\n",
"[2] <td> 9:39PM</td>\n",
"[3] <td class=\"text-right\">5.81ft</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>First Light</strong></td>\n",
"[2] <td class=\"text-right\"> 7:10AM</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Sunrise</strong></td>\n",
"[2] <td class=\"text-right\"> 7:40AM</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Sunset</strong></td>\n",
"[2] <td class=\"text-right\"> 6:12PM</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Last Light</strong></td>\n",
"[2] <td class=\"text-right\"> 6:42PM</td>\n",
"{xml_node}\n",
"<tr class=\"tbody-title\">\n",
"[1] <th class=\"row-title background-gray-lighter\" colspan=\"22\" data-full-widt ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540522800\" data-date=\"52610\" data-forecast-day=\"6\" data-date-anchor=\"Friday2610\" class=\" hide msw-js-fc-hide\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"ES ...\n",
" [7] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [8] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [9] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[10] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
"[11] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
"[12] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[13] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
"[14] <td class=\"text-center last msw-js-tooltip td-square background-success\" ...\n",
"[15] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[16] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">40<s ...\n",
"[17] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540533600\" data-date=\"52610\" data-forecast-day=\"6\" data-date-anchor=\"Friday2610\" class=\" hide msw-js-fc-hide\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"ES ...\n",
" [7] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [8] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [9] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[10] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
"[11] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
"[12] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[13] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
"[14] <td class=\"text-center last msw-js-tooltip td-square background-success\" ...\n",
"[15] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[16] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">38<s ...\n",
"[17] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540544400\" data-date=\"52610\" data-forecast-day=\"6\" data-date-anchor=\"Friday2610\" class=\"\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"ES ...\n",
" [7] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [8] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [9] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[10] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
"[11] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
"[12] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[13] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
"[14] <td class=\"text-center last msw-js-tooltip td-square background-success\" ...\n",
"[15] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[16] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">37<s ...\n",
"[17] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540555200\" data-date=\"52610\" data-forecast-day=\"6\" data-date-anchor=\"Friday2610\" class=\" hide msw-js-fc-hide\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"ES ...\n",
" [7] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [8] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [9] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[10] <td class=\" table-forecast-sub-swells\" colspan=\"3\"></td>\n",
"[11] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
"[12] <td class=\"text-center last msw-js-tooltip td-square background-success\" ...\n",
"[13] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[14] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">36<s ...\n",
"[15] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540566000\" data-date=\"52610\" data-forecast-day=\"6\" data-date-anchor=\"Friday2610\" class=\"\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"ES ...\n",
" [7] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [8] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [9] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[10] <td class=\" table-forecast-sub-swells\" colspan=\"3\"></td>\n",
"[11] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
"[12] <td class=\"text-center last msw-js-tooltip td-square background-success\" ...\n",
"[13] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[14] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">36<s ...\n",
"[15] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540576800\" data-date=\"52610\" data-forecast-day=\"6\" data-date-anchor=\"Friday2610\" class=\" hide msw-js-fc-hide\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"E ...\n",
" [7] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [8] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [9] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[10] <td class=\" table-forecast-sub-swells\" colspan=\"3\"></td>\n",
"[11] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
"[12] <td class=\"text-center last msw-js-tooltip td-square background-success\" ...\n",
"[13] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[14] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">37<s ...\n",
"[15] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540587600\" data-date=\"52610\" data-forecast-day=\"6\" data-date-anchor=\"Friday2610\" class=\"\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"E ...\n",
" [7] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [8] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [9] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[10] <td class=\" table-forecast-sub-swells\" colspan=\"3\"></td>\n",
"[11] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
"[12] <td class=\"text-center last msw-js-tooltip td-square background-success\" ...\n",
"[13] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[14] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">38<s ...\n",
"[15] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540598400\" data-date=\"52610\" data-forecast-day=\"6\" data-date-anchor=\"Friday2610\" class=\" hide msw-js-fc-hide\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap\"> <ul class=\"rating clearfix\" ...\n",
" [4] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [5] <td class=\"text-center background-gray-lighter\"> <h4 class=\"nomargin fo ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lighter\" title=\"E ...\n",
" [7] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [8] <td class=\"text-center table-forecast-sub-swells\"> <h5 class=\"nomargin ...\n",
" [9] <td class=\"text-center msw-js-tooltip table-forecast-sub-swells\" title=\" ...\n",
"[10] <td class=\" table-forecast-sub-swells\" colspan=\"3\"></td>\n",
"[11] <td class=\"text-center table-forecast-wind td-nowrap\"> <span class=\"stac ...\n",
"[12] <td class=\"text-center last msw-js-tooltip td-square background-success\" ...\n",
"[13] <td class=\"text-center\" data-filter=\"weather\" title=\"\"> <i class=\"weat ...\n",
"[14] <td class=\"text-center\"> <h5 class=\"nomargin font-sans-serif heavy\">39<s ...\n",
"[15] <td class=\"text-center flash probability\" data-filter=\"prob\"> <a href=\" ...\n",
"{xml_node}\n",
"<tr class=\"background-clear msw-js-tide hide msw-js-fc-hide\" data-date=\"52610\" data-filter=\"tides\">\n",
"[1] <td colspan=\"22\" data-full-width class=\"nopadding\"> <div class=\"row msw-t ...\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Low</strong></td>\n",
"[2] <td> 3:57AM</td>\n",
"[3] <td class=\"text-right\">1.57ft</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>High</strong></td>\n",
"[2] <td> 9:50AM</td>\n",
"[3] <td class=\"text-right\">6.07ft</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Low</strong></td>\n",
"[2] <td> 4:26PM</td>\n",
"[3] <td class=\"text-right\">1.12ft</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>High</strong></td>\n",
"[2] <td>10:23PM</td>\n",
"[3] <td class=\"text-right\">5.84ft</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>First Light</strong></td>\n",
"[2] <td class=\"text-right\"> 7:12AM</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Sunrise</strong></td>\n",
"[2] <td class=\"text-right\"> 7:42AM</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Sunset</strong></td>\n",
"[2] <td class=\"text-right\"> 6:11PM</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Last Light</strong></td>\n",
"[2] <td class=\"text-right\"> 6:41PM</td>\n",
"{xml_node}\n",
"<tr class=\"tbody-title\">\n",
"[1] <th class=\"row-title background-gray-lighter\" colspan=\"22\" data-full-widt ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540609200\" data-date=\"62710\" data-forecast-day=\"7\" data-date-anchor=\"Saturday2710\" class=\" row-hightlight hide msw-js-fc-hide\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap background-gray-lighter\"> <ul ...\n",
" [4] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [5] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lightest\" title=\"E ...\n",
" [7] <td class=\"text-center background-gray-lighter table-forecast-sub-swells ...\n",
" [8] <td class=\"text-center background-gray-lighter table-forecast-sub-swells ...\n",
" [9] <td class=\"text-center msw-js-tooltip background-gray-lighter table-fore ...\n",
"[10] <td class=\"background-gray-lighter table-forecast-sub-swells\" colspan=\"3 ...\n",
"[11] <td class=\"text-center table-forecast-wind td-nowrap background-gray-lig ...\n",
"[12] <td class=\"text-center last msw-js-tooltip td-square background-success\" ...\n",
"[13] <td class=\"text-center background-gray-lighter\" data-filter=\"weather\" ti ...\n",
"[14] <td class=\"text-center background-gray-lighter\"> <h5 class=\"nomargin fon ...\n",
"[15] <td class=\"text-center flash probability background-gray-lighter\" data-f ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540620000\" data-date=\"62710\" data-forecast-day=\"7\" data-date-anchor=\"Saturday2710\" class=\" row-hightlight hide msw-js-fc-hide\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap background-gray-lighter\"> <ul ...\n",
" [4] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [5] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lightest\" title=\"E ...\n",
" [7] <td class=\"text-center background-gray-lighter table-forecast-sub-swells ...\n",
" [8] <td class=\"text-center background-gray-lighter table-forecast-sub-swells ...\n",
" [9] <td class=\"text-center msw-js-tooltip background-gray-lighter table-fore ...\n",
"[10] <td class=\"background-gray-lighter table-forecast-sub-swells\" colspan=\"3 ...\n",
"[11] <td class=\"text-center table-forecast-wind td-nowrap background-gray-lig ...\n",
"[12] <td class=\"text-center last msw-js-tooltip td-square background-warning\" ...\n",
"[13] <td class=\"text-center background-gray-lighter\" data-filter=\"weather\" ti ...\n",
"[14] <td class=\"text-center background-gray-lighter\"> <h5 class=\"nomargin fon ...\n",
"[15] <td class=\"text-center flash probability background-gray-lighter\" data-f ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540630800\" data-date=\"62710\" data-forecast-day=\"7\" data-date-anchor=\"Saturday2710\" class=\" row-hightlight\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap background-gray-lighter\"> <ul ...\n",
" [4] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [5] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lightest\" title=\"E ...\n",
" [7] <td class=\"text-center background-gray-lighter table-forecast-sub-swells ...\n",
" [8] <td class=\"text-center background-gray-lighter table-forecast-sub-swells ...\n",
" [9] <td class=\"text-center msw-js-tooltip background-gray-lighter table-fore ...\n",
"[10] <td class=\"background-gray-lighter table-forecast-sub-swells\" colspan=\"3 ...\n",
"[11] <td class=\"text-center table-forecast-wind td-nowrap background-gray-lig ...\n",
"[12] <td class=\"text-center last msw-js-tooltip td-square background-warning\" ...\n",
"[13] <td class=\"text-center background-gray-lighter\" data-filter=\"weather\" ti ...\n",
"[14] <td class=\"text-center background-gray-lighter\"> <h5 class=\"nomargin fon ...\n",
"[15] <td class=\"text-center flash probability background-gray-lighter\" data-f ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540641600\" data-date=\"62710\" data-forecast-day=\"7\" data-date-anchor=\"Saturday2710\" class=\" row-hightlight hide msw-js-fc-hide\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap background-gray-lighter\"> <ul ...\n",
" [4] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [5] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lightest\" title=\"E ...\n",
" [7] <td class=\"text-center background-gray-lighter table-forecast-sub-swells ...\n",
" [8] <td class=\"text-center background-gray-lighter table-forecast-sub-swells ...\n",
" [9] <td class=\"text-center msw-js-tooltip background-gray-lighter table-fore ...\n",
"[10] <td class=\"background-gray-lighter table-forecast-sub-swells\" colspan=\"3 ...\n",
"[11] <td class=\"text-center table-forecast-wind td-nowrap background-gray-lig ...\n",
"[12] <td class=\"text-center last msw-js-tooltip td-square background-warning\" ...\n",
"[13] <td class=\"text-center background-gray-lighter\" data-filter=\"weather\" ti ...\n",
"[14] <td class=\"text-center background-gray-lighter\"> <h5 class=\"nomargin fon ...\n",
"[15] <td class=\"text-center flash probability background-gray-lighter\" data-f ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540652400\" data-date=\"62710\" data-forecast-day=\"7\" data-date-anchor=\"Saturday2710\" class=\" row-hightlight\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap background-gray-lighter\"> <ul ...\n",
" [4] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [5] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lightest\" title=\"E ...\n",
" [7] <td class=\"text-center background-gray-lighter table-forecast-sub-swells ...\n",
" [8] <td class=\"text-center background-gray-lighter table-forecast-sub-swells ...\n",
" [9] <td class=\"text-center msw-js-tooltip background-gray-lighter table-fore ...\n",
"[10] <td class=\"background-gray-lighter table-forecast-sub-swells\" colspan=\"3 ...\n",
"[11] <td class=\"text-center table-forecast-wind td-nowrap background-gray-lig ...\n",
"[12] <td class=\"text-center last msw-js-tooltip td-square background-success\" ...\n",
"[13] <td class=\"text-center background-gray-lighter\" data-filter=\"weather\" ti ...\n",
"[14] <td class=\"text-center background-gray-lighter\"> <h5 class=\"nomargin fon ...\n",
"[15] <td class=\"text-center flash probability background-gray-lighter\" data-f ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540663200\" data-date=\"62710\" data-forecast-day=\"7\" data-date-anchor=\"Saturday2710\" class=\" row-hightlight hide msw-js-fc-hide\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap background-gray-lighter\"> <ul ...\n",
" [4] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [5] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lightest\" title=\"E ...\n",
" [7] <td class=\"text-center background-gray-lighter table-forecast-sub-swells ...\n",
" [8] <td class=\"text-center background-gray-lighter table-forecast-sub-swells ...\n",
" [9] <td class=\"text-center msw-js-tooltip background-gray-lighter table-fore ...\n",
"[10] <td class=\"background-gray-lighter table-forecast-sub-swells\" colspan=\"3 ...\n",
"[11] <td class=\"text-center table-forecast-wind td-nowrap background-gray-lig ...\n",
"[12] <td class=\"text-center last msw-js-tooltip td-square background-success\" ...\n",
"[13] <td class=\"text-center background-gray-lighter\" data-filter=\"weather\" ti ...\n",
"[14] <td class=\"text-center background-gray-lighter\"> <h5 class=\"nomargin fon ...\n",
"[15] <td class=\"text-center flash probability background-gray-lighter\" data-f ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540674000\" data-date=\"62710\" data-forecast-day=\"7\" data-date-anchor=\"Saturday2710\" class=\" row-hightlight\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap background-gray-lighter\"> <ul ...\n",
" [4] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [5] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lightest\" title=\"W ...\n",
" [7] <td class=\"text-center background-gray-lighter table-forecast-sub-swells ...\n",
" [8] <td class=\"text-center background-gray-lighter table-forecast-sub-swells ...\n",
" [9] <td class=\"text-center msw-js-tooltip background-gray-lighter table-fore ...\n",
"[10] <td class=\"background-gray-lighter table-forecast-sub-swells\" colspan=\"3 ...\n",
"[11] <td class=\"text-center table-forecast-wind td-nowrap background-gray-lig ...\n",
"[12] <td class=\"text-center last msw-js-tooltip td-square background-success\" ...\n",
"[13] <td class=\"text-center background-gray-lighter\" data-filter=\"weather\" ti ...\n",
"[14] <td class=\"text-center background-gray-lighter\"> <h5 class=\"nomargin fon ...\n",
"[15] <td class=\"text-center flash probability background-gray-lighter\" data-f ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540684800\" data-date=\"62710\" data-forecast-day=\"7\" data-date-anchor=\"Saturday2710\" class=\" row-hightlight hide msw-js-fc-hide\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap background-gray-lighter\"> <ul ...\n",
" [4] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [5] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lightest\" title=\"E ...\n",
" [7] <td class=\"text-center background-gray-lighter table-forecast-sub-swells ...\n",
" [8] <td class=\"text-center background-gray-lighter table-forecast-sub-swells ...\n",
" [9] <td class=\"text-center msw-js-tooltip background-gray-lighter table-fore ...\n",
"[10] <td class=\"background-gray-lighter table-forecast-sub-swells\" colspan=\"3 ...\n",
"[11] <td class=\"text-center table-forecast-wind td-nowrap background-gray-lig ...\n",
"[12] <td class=\"text-center last msw-js-tooltip td-square background-success\" ...\n",
"[13] <td class=\"text-center background-gray-lighter\" data-filter=\"weather\" ti ...\n",
"[14] <td class=\"text-center background-gray-lighter\"> <h5 class=\"nomargin fon ...\n",
"[15] <td class=\"text-center flash probability background-gray-lighter\" data-f ...\n",
"{xml_node}\n",
"<tr class=\"background-clear msw-js-tide hide msw-js-fc-hide\" data-date=\"62710\" data-filter=\"tides\">\n",
"[1] <td colspan=\"22\" data-full-width class=\"nopadding background-clear\"> <div ...\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Low</strong></td>\n",
"[2] <td> 4:41AM</td>\n",
"[3] <td class=\"text-right\">1.71ft</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>High</strong></td>\n",
"[2] <td>10:32AM</td>\n",
"[3] <td class=\"text-right\">6.04ft</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Low</strong></td>\n",
"[2] <td> 5:10PM</td>\n",
"[3] <td class=\"text-right\">1.12ft</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>High</strong></td>\n",
"[2] <td>11:08PM</td>\n",
"[3] <td class=\"text-right\">5.84ft</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>First Light</strong></td>\n",
"[2] <td class=\"text-right\"> 7:13AM</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Sunrise</strong></td>\n",
"[2] <td class=\"text-right\"> 7:43AM</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Sunset</strong></td>\n",
"[2] <td class=\"text-right\"> 6:09PM</td>\n",
"{xml_node}\n",
"<tr>\n",
"[1] <td><strong>Last Light</strong></td>\n",
"[2] <td class=\"text-right\"> 6:40PM</td>\n"
]
}
],
"source": [
"for (i in 1:135){\n",
"print(ltown %>% html_nodes('tr') %>% .[[i]])\n",
"}"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"This provides a lot of detail, but if we scroll through we can see that there are `data-date-anchor` tags that specify which day we're looking at, so looking back at our page, we can see there are 8 entries per day, so counting down to the current day (line 11) and adding those eight lines, we can get just today's data:"
]
},
{
"cell_type": "code",
"execution_count": 100,
"metadata": {
"scrolled": false
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"{xml_node}\n",
"<tr data-timestamp=\"1540090800\" data-date=\"72110\" data-forecast-day=\"1\" data-date-anchor=\"Sunday2110\" class=\" is-first row-hightlight\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap background-gray-lighter\"> <ul ...\n",
" [4] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [5] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lightest\" title=\"S ...\n",
" [7] <td class=\"background-gray-lighter table-forecast-sub-swells\" colspan=\"6 ...\n",
" [8] <td class=\"text-center table-forecast-wind td-nowrap background-gray-lig ...\n",
" [9] <td class=\"text-center last msw-js-tooltip td-square background-danger\" ...\n",
"[10] <td class=\"text-center background-gray-lighter\" data-filter=\"weather\" ti ...\n",
"[11] <td class=\"text-center background-gray-lighter\"> <h5 class=\"nomargin fon ...\n",
"[12] <td class=\"text-center flash probability background-gray-lighter\" data-f ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540101600\" data-date=\"72110\" data-forecast-day=\"1\" data-date-anchor=\"Sunday2110\" class=\" is-first row-hightlight\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap background-gray-lighter\"> <ul ...\n",
" [4] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [5] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lightest\" title=\"S ...\n",
" [7] <td class=\"background-gray-lighter table-forecast-sub-swells\" colspan=\"6 ...\n",
" [8] <td class=\"text-center table-forecast-wind td-nowrap background-gray-lig ...\n",
" [9] <td class=\"text-center last msw-js-tooltip td-square background-success\" ...\n",
"[10] <td class=\"text-center background-gray-lighter\" data-filter=\"weather\" ti ...\n",
"[11] <td class=\"text-center background-gray-lighter\"> <h5 class=\"nomargin fon ...\n",
"[12] <td class=\"text-center flash probability background-gray-lighter\" data-f ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540112400\" data-date=\"72110\" data-forecast-day=\"1\" data-date-anchor=\"Sunday2110\" class=\" is-first row-hightlight\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap background-gray-lighter\"> <ul ...\n",
" [4] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [5] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lightest\" title=\"S ...\n",
" [7] <td class=\"background-gray-lighter table-forecast-sub-swells\" colspan=\"6 ...\n",
" [8] <td class=\"text-center table-forecast-wind td-nowrap background-gray-lig ...\n",
" [9] <td class=\"text-center last msw-js-tooltip td-square background-success\" ...\n",
"[10] <td class=\"text-center background-gray-lighter\" data-filter=\"weather\" ti ...\n",
"[11] <td class=\"text-center background-gray-lighter\"> <h5 class=\"nomargin fon ...\n",
"[12] <td class=\"text-center flash probability background-gray-lighter\" data-f ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540123200\" data-date=\"72110\" data-forecast-day=\"1\" data-date-anchor=\"Sunday2110\" class=\" is-first row-hightlight\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap background-gray-lighter\"> <ul ...\n",
" [4] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [5] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lightest\" title=\"S ...\n",
" [7] <td class=\"background-gray-lighter table-forecast-sub-swells\" colspan=\"6 ...\n",
" [8] <td class=\"text-center table-forecast-wind td-nowrap background-gray-lig ...\n",
" [9] <td class=\"text-center last msw-js-tooltip td-square background-success\" ...\n",
"[10] <td class=\"text-center background-gray-lighter\" data-filter=\"weather\" ti ...\n",
"[11] <td class=\"text-center background-gray-lighter\"> <h5 class=\"nomargin fon ...\n",
"[12] <td class=\"text-center flash probability background-gray-lighter\" data-f ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540134000\" data-date=\"72110\" data-forecast-day=\"1\" data-date-anchor=\"Sunday2110\" class=\" is-first row-hightlight\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap background-gray-lighter\"> <ul ...\n",
" [4] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [5] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lightest\" title=\"S ...\n",
" [7] <td class=\"background-gray-lighter table-forecast-sub-swells\" colspan=\"6 ...\n",
" [8] <td class=\"text-center table-forecast-wind td-nowrap background-gray-lig ...\n",
" [9] <td class=\"text-center last msw-js-tooltip td-square background-success\" ...\n",
"[10] <td class=\"text-center background-gray-lighter\" data-filter=\"weather\" ti ...\n",
"[11] <td class=\"text-center background-gray-lighter\"> <h5 class=\"nomargin fon ...\n",
"[12] <td class=\"text-center flash probability background-gray-lighter\" data-f ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540144800\" data-date=\"72110\" data-forecast-day=\"1\" data-date-anchor=\"Sunday2110\" class=\" is-first row-hightlight\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap background-gray-lighter\"> <ul ...\n",
" [4] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [5] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lightest\" title=\"S ...\n",
" [7] <td class=\"background-gray-lighter table-forecast-sub-swells\" colspan=\"6 ...\n",
" [8] <td class=\"text-center table-forecast-wind td-nowrap background-gray-lig ...\n",
" [9] <td class=\"text-center last msw-js-tooltip td-square background-success\" ...\n",
"[10] <td class=\"text-center background-gray-lighter\" data-filter=\"weather\" ti ...\n",
"[11] <td class=\"text-center background-gray-lighter\"> <h5 class=\"nomargin fon ...\n",
"[12] <td class=\"text-center flash probability background-gray-lighter\" data-f ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540155600\" data-date=\"72110\" data-forecast-day=\"1\" data-date-anchor=\"Sunday2110\" class=\" is-first row-hightlight\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap background-gray-lighter\"> <ul ...\n",
" [4] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [5] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lightest\" title=\"S ...\n",
" [7] <td class=\"text-center background-gray-lighter table-forecast-sub-swells ...\n",
" [8] <td class=\"text-center background-gray-lighter table-forecast-sub-swells ...\n",
" [9] <td class=\"text-center msw-js-tooltip background-gray-lighter table-fore ...\n",
"[10] <td class=\"background-gray-lighter table-forecast-sub-swells\" colspan=\"3 ...\n",
"[11] <td class=\"text-center table-forecast-wind td-nowrap background-gray-lig ...\n",
"[12] <td class=\"text-center last msw-js-tooltip td-square background-success\" ...\n",
"[13] <td class=\"text-center background-gray-lighter\" data-filter=\"weather\" ti ...\n",
"[14] <td class=\"text-center background-gray-lighter\"> <h5 class=\"nomargin fon ...\n",
"[15] <td class=\"text-center flash probability background-gray-lighter\" data-f ...\n",
"{xml_node}\n",
"<tr data-timestamp=\"1540166400\" data-date=\"72110\" data-forecast-day=\"1\" data-date-anchor=\"Sunday2110\" class=\" is-first row-hightlight\">\n",
" [1] <td class=\"nopadding-left row-title background-clear msw-js-tooltip\" tit ...\n",
" [2] <td class=\"text-center background-info table-forecast-breaking-wave\" sty ...\n",
" [3] <td class=\"table-forecast-rating td-nowrap background-gray-lighter\"> <ul ...\n",
" [4] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [5] <td class=\"text-center background-gray-lightest\"> <h4 class=\"nomargin f ...\n",
" [6] <td class=\"text-center msw-js-tooltip background-gray-lightest\" title=\"S ...\n",
" [7] <td class=\"text-center background-gray-lighter table-forecast-sub-swells ...\n",
" [8] <td class=\"text-center background-gray-lighter table-forecast-sub-swells ...\n",
" [9] <td class=\"text-center msw-js-tooltip background-gray-lighter table-fore ...\n",
"[10] <td class=\"background-gray-lighter table-forecast-sub-swells\" colspan=\"3 ...\n",
"[11] <td class=\"text-center table-forecast-wind td-nowrap background-gray-lig ...\n",
"[12] <td class=\"text-center last msw-js-tooltip td-square background-success\" ...\n",
"[13] <td class=\"text-center background-gray-lighter\" data-filter=\"weather\" ti ...\n",
"[14] <td class=\"text-center background-gray-lighter\"> <h5 class=\"nomargin fon ...\n",
"[15] <td class=\"text-center flash probability background-gray-lighter\" data-f ...\n"
]
}
],
"source": [
"for (i in 11:18){\n",
"print(ltown %>% html_nodes('tr') %>% .[[i]])\n",
"}"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"But this also has a lot of `html` stuff we don't want, so let's try parsing out the text:"
]
},
{
"cell_type": "code",
"execution_count": 101,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<span style=white-space:pre-wrap>' 12am 7-11ft 13ft 10s 13 20 mph 57°f 100% '</span>"
],
"text/latex": [
"' 12am 7-11ft 13ft 10s 13 20 mph 57°f 100\\% '"
],
"text/markdown": [
"<span style=white-space:pre-wrap>' 12am 7-11ft 13ft 10s 13 20 mph 57°f 100% '</span>"
],
"text/plain": [
"[1] \" 12am 7-11ft 13ft 10s 13 20 mph 57°f 100% \""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"ltown %>% html_nodes('tr') %>% .[[11]] %>% html_text()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"This looks super-promising, as we already know how to split a string on spaces. So all that's left to do is:"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"---\n",
"# Task 2\n",
"---\n",
"\n",
"Grab the current day's surf report for Lawerencetown and put it into a properly-formatted data frame. There should be 8 rows and the columns should have proper headings."
]
},
{
"cell_type": "code",
"execution_count": 102,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# Your answer here (feel free to add cells to complete your answer)\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"With that table downloaded, the current day's data has been stored. But what about the dynamic bit? This is pretty easy, provided we divy up time correctly. \n",
"\n",
"To stop an operation for a specific perioud of time we can use `Sys.sleep()`"
]
},
{
"cell_type": "code",
"execution_count": 107,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"testit = function(x)\n",
"{\n",
" p1 = proc.time()\n",
" Sys.sleep(x)\n",
" proc.time() - p1 # The cpu usage should be negligible\n",
"}"
]
},
{
"cell_type": "code",
"execution_count": 108,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
" user system elapsed \n",
" 0.000 0.000 3.703 "
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"testit(3.7)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"While the surf report page gets updated every day, other pages get updated more frequently, for example the [current windspeed at YHZ](https://www.windfinder.com/forecast/halifax-stanfield-airport), which gets loaded each time the webpage is accessed:"
]
},
{
"cell_type": "code",
"execution_count": 133,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# Grab webpage\n",
"YHZ_kts = read_html(\"https://www.windfinder.com/forecast/halifax-stanfield-airport\")"
]
},
{
"cell_type": "code",
"execution_count": 134,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"'7'"
],
"text/latex": [
"'7'"
],
"text/markdown": [
"'7'"
],
"text/plain": [
"[1] \"7\""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"YHZ_kts %>% html_nodes('#current-wind-speed') %>% .[[1]] %>% html_text()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Using `Sys.sleep()` we can check the windspeed every 5 seconds for 30 seconds and see if it changes:"
]
},
{
"cell_type": "code",
"execution_count": 136,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[1] \"7\"\n",
"[1] \"7\"\n",
"[1] \"7\"\n",
"[1] \"7\"\n",
"[1] \"7\"\n",
"[1] \"7\"\n"
]
}
],
"source": [
"for (i in 1:6){\n",
" print(read_html(\"https://www.windfinder.com/forecast/halifax-stanfield-airport\") %>% html_nodes('#current-wind-speed') %>% .[[1]] %>% html_text())\n",
" Sys.sleep(5)\n",
"}"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Not a wild swing in speeds but you get the idea. "
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"---\n",
"# Task 3\n",
"---\n",
"\n",
"Grab one minute of windspeeds at 10 sec intervals from your hometown and store them in a properly-formatted dataframe, including the location, direction, and current time."
]
},
{
"cell_type": "code",
"execution_count": 154,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# Your answer here (feel free to add cells to complete your answer)\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"This kind of automagic storage is incredibly useful, however not everyone loves it. The [XE](https://www.xe.com/currencyconverter/convert/?Amount=1&From=CAD&To=EUR) currency exchange website for example, lets you know right up front how they feel about it:"
]
},
{
"cell_type": "code",
"execution_count": 165,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"{xml_nodeset (1)}\n",
"[1] <head>\\n<!-- WARNING: Automated extraction of rates is prohibited under t ..."
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"read_html(\"https://www.xe.com/currencyconverter/convert/?Amount=1&From=CAD&To=EUR\") %>% html_nodes('head')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"So be careful about what you look at, and check that there are no restrictions in the meta-data for the information you're extracting."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"---\n",
"# Task 4\n",
"---\n",
"\n",
"Grab the header from the chosen webpage from your assignement and print any warnings that appear in the header."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# Your answer here (feel free to add cells to complete your answer)\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"---\n",
"# Task 5\n",
"---\n",
"\n",
"Describe your chosen webpage for your assignment and why it is of interest to you."
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
"# Your answer here (feel free to add cells to complete your answer)\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"collapsed": true
},
"source": [
"# What have you learned and what's next?\n",
"\n",
"The point of today's lab was to learn more about html for webscraping\n",
"\n",
"**You should at this point be comfortable:**\n",
" 1. Knowing about html tags\n",
" 2. Piping various rvest commands\n",
" 3. Using SlectorGadget to get what tags you're intersted in\n",
" 4. With what data you will do Assignment 2\n",
"\n",
"Next week we will escape html and discuss **living documents**...\n",
"\n",
"\n",
"---\n",
"# ** A bientôt ** !"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "R",
"language": "R",
"name": "ir"
},
"language_info": {
"codemirror_mode": "r",
"file_extension": ".r",
"mimetype": "text/x-r-source",
"name": "R",
"pygments_lexer": "r",
"version": "3.4.1"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment