{ "cells": [ { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from IPython.core.display import display, HTML\n", "display(HTML(\"\"))" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "from selenium import webdriver\n", "from selenium.webdriver.chrome.options import Options\n", "from selenium.common.exceptions import NoSuchElementException\n", "\n", "options = Options()\n", "#options.headless = True\n", "b = webdriver.Chrome(options=options)" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [], "source": [ "import time" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "still waiting\n", "still waiting\n", "still waiting\n", "still waiting\n" ] } ], "source": [ "b.get(\"https://tyler.caraza-harter.com/cs320/s20/materials/lec-19/page1.html\")\n", "\n", "# poll (check) until we have the data\n", "for i in range(40):\n", " try:\n", " b.find_element_by_id(\"coords\")\n", " break\n", " except NoSuchElementException:\n", " print(\"still waiting\")\n", " time.sleep(0.25)" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [], "source": [ "from bs4 import BeautifulSoup\n", "page = BeautifulSoup(b.page_source)\n", "tbls = page.find_all(\"table\")\n", "assert len(tbls) == 2" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[['x', 'y'],\n", " ['0', '1'],\n", " ['2', '3'],\n", " ['4', '5'],\n", " ['6', '7'],\n", " ['8', '9'],\n", " ['10', '11'],\n", " ['12', '13'],\n", " ['14', '15'],\n", " ['16', '17'],\n", " ['18', '19']]" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "rows = []\n", "for tr in tbls[1].find_all(\"tr\"):\n", " rows.append([td.get_text() for td in tr.find_all(\"td\")])\n", "rows" ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
xy
001
123
245
367
489
51011
61213
71415
81617
91819
\n", "
" ], "text/plain": [ " x y\n", "0 0 1\n", "1 2 3\n", "2 4 5\n", "3 6 7\n", "4 8 9\n", "5 10 11\n", "6 12 13\n", "7 14 15\n", "8 16 17\n", "9 18 19" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import pandas as pd\n", "pd.DataFrame(rows[1:], columns=rows[0])" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "b.close()" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [], "source": [ "options = Options()\n", "#options.headless = True\n", "b = webdriver.Chrome(options=options)" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [], "source": [ "# page2.html\n", "b.get(\"https://tyler.caraza-harter.com/cs320/s20/materials/lec-19/page2.html\")" ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [], "source": [ "while True:\n", " try:\n", " btn = b.find_element_by_id(\"more\")\n", " except NoSuchElementException:\n", " break\n", " btn.click()\n", " time.sleep(2)" ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [], "source": [ "from bs4 import BeautifulSoup\n", "page = BeautifulSoup(b.page_source)\n", "tbls = page.find_all(\"table\")\n", "assert len(tbls) == 1" ] }, { "cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [], "source": [ "b.close()" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [], "source": [ "options = Options()\n", "#options.headless = True\n", "b = webdriver.Chrome(options=options)" ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [], "source": [ "# page3.html\n", "b.get(\"https://tyler.caraza-harter.com/cs320/s20/materials/lec-19/page3.html\")" ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 31, "metadata": {}, "output_type": "execute_result" } ], "source": [ "btn = b.find_element_by_id(\"login_btn\")\n", "btn" ] }, { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 33, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pw = b.find_element_by_id(\"password\")\n", "pw" ] }, { "cell_type": "code", "execution_count": 36, "metadata": {}, "outputs": [], "source": [ "pw.clear()" ] }, { "cell_type": "code", "execution_count": 37, "metadata": {}, "outputs": [], "source": [ "pw.send_keys(\"fido\")" ] }, { "cell_type": "code", "execution_count": 38, "metadata": {}, "outputs": [], "source": [ "btn.click()" ] }, { "cell_type": "code", "execution_count": 39, "metadata": {}, "outputs": [], "source": [ "b.close()" ] }, { "cell_type": "code", "execution_count": 40, "metadata": {}, "outputs": [], "source": [ "options = Options()\n", "#options.headless = True\n", "b = webdriver.Chrome(options=options)" ] }, { "cell_type": "code", "execution_count": 41, "metadata": {}, "outputs": [], "source": [ "# page4.html\n", "b.get(\"https://tyler.caraza-harter.com/cs320/s20/materials/lec-19/page4.html\")" ] }, { "cell_type": "code", "execution_count": 42, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 42, "metadata": {}, "output_type": "execute_result" } ], "source": [ "year_box = b.find_element_by_id(\"year\")\n", "year_box" ] }, { "cell_type": "code", "execution_count": 43, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 43, "metadata": {}, "output_type": "execute_result" } ], "source": [ "search_btn = b.find_element_by_id(\"search_btn\")\n", "search_btn" ] }, { "cell_type": "code", "execution_count": 52, "metadata": {}, "outputs": [], "source": [ "import pandas as pd" ] }, { "cell_type": "code", "execution_count": 51, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "3" ] }, "execution_count": 51, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def hurricane_count(year):\n", " year_box.clear()\n", " year_box.send_keys(str(year))\n", " search_btn.click()\n", " \n", " trs = b.find_elements_by_tag_name(\"tr\")\n", " return len(trs) - 1\n", "\n", "hurricane_count(1950)" ] }, { "cell_type": "code", "execution_count": 55, "metadata": {}, "outputs": [], "source": [ "s = pd.Series()\n", "for year in range(1950, 2020):\n", " s.loc[year] = hurricane_count(year)" ] }, { "cell_type": "code", "execution_count": 59, "metadata": {}, "outputs": [], "source": [ "import matplotlib\n", "matplotlib.rcParams[\"font.size\"] = 16" ] }, { "cell_type": "code", "execution_count": 64, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "ax = s.plot.line(color=\"r\")\n", "ax.set_xlabel(\"Year\")\n", "ax.set_ylabel(\"Hurricane Count\")\n", "ax.spines[\"right\"].set_visible(False)\n", "ax.spines[\"top\"].set_visible(False)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.7.2" } }, "nbformat": 4, "nbformat_minor": 2 }