{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "So based on the when do users sleep on Facebook site:" ] }, { "cell_type": "raw", "metadata": {}, "source": [ "links = \"\"; for (var i=0; i < document.getElementsByClassName(\"s-access-image cfMarker\").length; i++){ links += '\"' + document.getElementsByClassName(\"s-access-image cfMarker\")[i].getAttribute(\"src\")+ '\",'}; copy(links);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now, let's get this into Python:" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false }, "outputs": [], "source": [ "urls = []\n", "urls += [\"https://images-na.ssl-images-amazon.com/images/I/418XttEFsaL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51LPqqDlQ-L._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/41deeL57l0L._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51RknJoxSNL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51TGv4PcseL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/418ca+bNVIL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/41JPlY5ie6L._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51aJu-4j9UL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/41w4Qo6hWnL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/5174GQsw2oL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51hJ+guIj7L._AC_US160_.jpg\"]" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "collapsed": true }, "outputs": [], "source": [ "urls += [\"https://images-na.ssl-images-amazon.com/images/I/51HJpCXaLYL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/519YqTpedGL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51sUlL5maVL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/41DNfOfAV8L._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51My1ZNh+FL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/41RUG4NwQiL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/41xs4vbcTPL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51vgI+s-apL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51lRKIRqTZL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51NU2DtQBcL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/41A+tiarMgL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/516-D2YXwgL._AC_US160_.jpg\"]" ] }, { "cell_type": "code", "execution_count": 21, "metadata": { "collapsed": true }, "outputs": [], "source": [ "urls += [\"https://images-na.ssl-images-amazon.com/images/I/51qO2KoiSDL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51lyH+35txL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51Z4XFogXPL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51pwKtF7OwL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51ZZtiHkiAL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/41tnKMu4ulL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51R+SEmPpBL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51GIiB6C6dL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/413r8WhmiaL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51dGBDS43dL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/41v3bKNxUEL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51oXCQ4ItcL._AC_US160_.jpg\"]" ] }, { "cell_type": "code", "execution_count": 25, "metadata": { "collapsed": true }, "outputs": [], "source": [ "urls += [\"https://images-na.ssl-images-amazon.com/images/I/41RjMG1coZL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/41puRd++1IL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51pQGvB3+kL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/41fYOsbUDDL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51xTYFa31BL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/511ie7NsyUL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51BNowh9RxL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/41Jz0F-vrqL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51SxyEnz31L._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/31at2PnNQ3L._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51pf55cqofL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/41ulkbbN6vL._AC_US160_.jpg\"]" ] }, { "cell_type": "code", "execution_count": 26, "metadata": { "collapsed": true }, "outputs": [], "source": [ "urls += [\"https://images-na.ssl-images-amazon.com/images/I/51VpDn4arXL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/411syI86SvL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51kwFhnyspL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/512e1KFaWLL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51oZGpYUh8L._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/41M6qmTAxyL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/419sM+aeg3L._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51WDXV8fBtL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/41fRjgi4bGL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51ZJ9oW95yL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/41qejx0fB0L._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/41nIDgkaS5L._AC_US160_.jpg\"]" ] }, { "cell_type": "code", "execution_count": 27, "metadata": { "collapsed": true }, "outputs": [], "source": [ "urls += [\"https://images-na.ssl-images-amazon.com/images/I/51AlSeE6sGL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51cCr4hCzcL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/41+Mee4CJjL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/41j4FvfPh+L._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/41p8PSoxgLL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51ZNLZ61f1L._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51P95CcBNgL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51d6lxgyUDL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/41A9UOIl0HL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51hzUEGMLwL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51ej712hEIL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/41Vic0PNzUL._AC_US160_.jpg\"]" ] }, { "cell_type": "code", "execution_count": 31, "metadata": { "collapsed": true }, "outputs": [], "source": [ "urls += [\"https://images-na.ssl-images-amazon.com/images/I/51r5ZCO9nGL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/41Oe65QHNLL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51yS9l6fzGL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51WBbsbqUAL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51+n7FJ1XlL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51zI3Zlkm4L._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51PxNpIKVQL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/411syI86SvL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51NEnGrJwOL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51N4nhocqvL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/41kYnb9W7-L._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51rgOm1NjUL._AC_US160_.jpg\"]" ] }, { "cell_type": "code", "execution_count": 32, "metadata": { "collapsed": true }, "outputs": [], "source": [ "urls += [\"https://images-na.ssl-images-amazon.com/images/I/51FAKHDS4WL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51ivToOn0bL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/41eALpLBiBL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51LFUZmaFaL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/41ZQF7heaIL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/519sD3dektL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/41F-eKgud3L._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/41OS2NeBSYL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/41zkjtRCmTL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51AyCq7J+FL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51JQGtf3HCL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/410uZcwkqpL._AC_US160_.jpg\"]" ] }, { "cell_type": "code", "execution_count": 33, "metadata": { "collapsed": true }, "outputs": [], "source": [ "urls += [\"https://images-na.ssl-images-amazon.com/images/I/41SepicY+jL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/41fPiJdACML._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/41MxofDeQdL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51vkeL6paXL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/41cmbVgyllL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51-LiI4nCXL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/41uo0JiUyTL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51zfsuZy5LL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51dvdoaioZL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/41AKbODtgzL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/414WzCPf9qL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/41Q7-+CVYcL._AC_US160_.jpg\"]" ] }, { "cell_type": "code", "execution_count": 34, "metadata": { "collapsed": true }, "outputs": [], "source": [ "urls += [\"https://images-na.ssl-images-amazon.com/images/I/51dz+xNKdSL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51aQe-WQ+SL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/413wZTs6IVL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51exBkqu6AL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/41g437c+bvL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/41iOAT3OCoL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/41FTlVxTu8L._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51jZGrnagjL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51HviK3BH+L._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/61D71WQdMaL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/61OJKEqsGIL._AC_US160_.jpg\",\"https://images-na.ssl-images-amazon.com/images/I/51fcQTVfIzL._AC_US160_.jpg\"]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now let's display some images. To make them align, we use the CSS attribute \"float: left\" (credit: [here](http://stackoverflow.com/questions/19471814/display-multiple-images-in-one-ipython-notebook-cell))." ] }, { "cell_type": "code", "execution_count": 35, "metadata": { "collapsed": true }, "outputs": [], "source": [ "from IPython.display import HTML" ] }, { "cell_type": "code", "execution_count": 36, "metadata": { "collapsed": true }, "outputs": [], "source": [ "def insert(urls):\n", " \"Produces a link to a lot of HTML images.\"\n", " html = \"\"\n", " for url in urls:\n", " html += ''.format(url)\n", " return HTML(\"\" + html + \"\")" ] }, { "cell_type": "code", "execution_count": 37, "metadata": { "collapsed": false, "scrolled": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "" ] }, "execution_count": 37, "metadata": {}, "output_type": "execute_result" } ], "source": [ "insert(urls)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Doing it the Python way " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "After copying and pasting so many links, I'm thinking about doing this in Python entirely. Is this possible?" ] }, { "cell_type": "code", "execution_count": 39, "metadata": { "collapsed": false }, "outputs": [], "source": [ "from bs4 import BeautifulSoup" ] }, { "cell_type": "code", "execution_count": 41, "metadata": { "collapsed": true }, "outputs": [], "source": [ "from requests import get\n", "r = get('https://www.amazon.com/s/ref=sr_pg_1?fst=as%3Aoff&rh=n%3A283155%2Cn%3A2%2Cn%3A2419%2Cn%3A2420%2Ck%3Asteve+jobs&keywords=steve+jobs&ie=UTF8&qid=1476114464&spIA=B01DPCI6H8,B00CB14A1Q')" ] }, { "cell_type": "code", "execution_count": 42, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 42, "metadata": {}, "output_type": "execute_result" } ], "source": [ "r" ] }, { "cell_type": "code", "execution_count": 46, "metadata": { "collapsed": false }, "outputs": [], "source": [ "soup = BeautifulSoup(r.text, 'html.parser')" ] }, { "cell_type": "code", "execution_count": 53, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "https://images-na.ssl-images-amazon.com/images/I/418XttEFsaL._AC_US160_.jpg\n", "https://images-na.ssl-images-amazon.com/images/I/51LPqqDlQ-L._AC_US160_.jpg\n", "https://images-na.ssl-images-amazon.com/images/I/41deeL57l0L._AC_US160_.jpg\n", "https://images-na.ssl-images-amazon.com/images/I/41CRJzh-LvL._AC_US160_.jpg\n", "https://images-na.ssl-images-amazon.com/images/I/51RknJoxSNL._AC_US160_.jpg\n", "https://images-na.ssl-images-amazon.com/images/I/51TGv4PcseL._AC_US160_.jpg\n", "https://images-na.ssl-images-amazon.com/images/I/418ca+bNVIL._AC_US160_.jpg\n", "https://images-na.ssl-images-amazon.com/images/I/41JPlY5ie6L._AC_US160_.jpg\n", "https://images-na.ssl-images-amazon.com/images/I/51sn+UP35HL._AC_US160_.jpg\n", "https://images-na.ssl-images-amazon.com/images/I/51aJu-4j9UL._AC_US160_.jpg\n", "https://images-na.ssl-images-amazon.com/images/I/51hJ+guIj7L._AC_US160_.jpg\n" ] } ], "source": [ "for tag in soup.find_all(class_='s-access-image cfMarker'):\n", " print(tag.attrs['src'])" ] }, { "cell_type": "code", "execution_count": 59, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "200" ] }, "execution_count": 59, "metadata": {}, "output_type": "execute_result" } ], "source": [ "r.status_code" ] }, { "cell_type": "code", "execution_count": 57, "metadata": { "collapsed": true }, "outputs": [], "source": [ "def urls_from_amazon(amazon_url):\n", " \"Returns all product image urls from amazon url.\"\n", " r = get(amazon_url)\n", " if r.status_code == 200:\n", " return [tag.attrs['src'] for tag in BeautifulSoup(r.text, 'html.parser')\\\n", " .find_all(class_='s-access-image cfMarker')]\n", " else:\n", " raise Exception(\"The request didn't end well.\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's test this:" ] }, { "cell_type": "code", "execution_count": 67, "metadata": { "collapsed": false }, "outputs": [ { "ename": "Exception", "evalue": "The request didn't end well.", "output_type": "error", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[0;31mException\u001b[0m Traceback (most recent call last)", "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[1;32m 1\u001b[0m \u001b[0mamazon_url\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m\"https://www.amazon.com/s/ref=nb_sb_noss_2?url=node%3D2420&field-keywords=socrates&rh=n%3A283155%2Cn%3A2%2Cn%3A2419%2Cn%3A2420%2Ck%3Asocrates\"\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 2\u001b[0;31m \u001b[0murls_from_amazon\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mamazon_url\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", "\u001b[0;32m\u001b[0m in \u001b[0;36murls_from_amazon\u001b[0;34m(amazon_url)\u001b[0m\n\u001b[1;32m 5\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0;34m[\u001b[0m\u001b[0mtag\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mattrs\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'src'\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0mtag\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mBeautifulSoup\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mr\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mtext\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m'html.parser'\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;34m.\u001b[0m\u001b[0mfind_all\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mclass_\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m's-access-image cfMarker'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 6\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 7\u001b[0;31m \u001b[0;32mraise\u001b[0m \u001b[0mException\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"The request didn't end well.\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", "\u001b[0;31mException\u001b[0m: The request didn't end well." ] } ], "source": [ "amazon_url = \"https://www.amazon.com/s/ref=nb_sb_noss_2?url=node%3D2420&field-keywords=socrates&rh=n%3A283155%2Cn%3A2%2Cn%3A2419%2Cn%3A2420%2Ck%3Asocrates\"\n", "urls_from_amazon(amazon_url)" ] }, { "cell_type": "code", "execution_count": 63, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "" ] }, "execution_count": 63, "metadata": {}, "output_type": "execute_result" } ], "source": [ "insert(_62)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "What about... Barack Obama?" ] }, { "cell_type": "code", "execution_count": 66, "metadata": { "collapsed": false }, "outputs": [ { "ename": "Exception", "evalue": "The request didn't end well.", "output_type": "error", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[0;31mException\u001b[0m Traceback (most recent call last)", "\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0murls\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0murls_from_amazon\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"https://www.amazon.com/s/ref=nb_sb_noss_1?url=node%3D2420&field-keywords=barack+obama&rh=n%3A283155%2Cn%3A2%2Cn%3A2419%2Cn%3A2420%2Ck%3Abarack+obama\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", "\u001b[0;32m\u001b[0m in \u001b[0;36murls_from_amazon\u001b[0;34m(amazon_url)\u001b[0m\n\u001b[1;32m 5\u001b[0m \u001b[0;32mreturn\u001b[0m \u001b[0;34m[\u001b[0m\u001b[0mtag\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mattrs\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m'src'\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0mtag\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mBeautifulSoup\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mr\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mtext\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m'html.parser'\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;34m.\u001b[0m\u001b[0mfind_all\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mclass_\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m's-access-image cfMarker'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 6\u001b[0m \u001b[0;32melse\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 7\u001b[0;31m \u001b[0;32mraise\u001b[0m \u001b[0mException\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"The request didn't end well.\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m", "\u001b[0;31mException\u001b[0m: The request didn't end well." ] } ], "source": [ "urls = urls_from_amazon(\"https://www.amazon.com/s/ref=nb_sb_noss_1?url=node%3D2420&field-keywords=barack+obama&rh=n%3A283155%2Cn%3A2%2Cn%3A2419%2Cn%3A2420%2Ck%3Abarack+obama\")" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": true }, "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.5.2" } }, "nbformat": 4, "nbformat_minor": 0 }