{ "cells": [ { "cell_type": "markdown", "id": "d162b058", "metadata": {}, "source": [ "--- \n", " \n", "\n", "

Department of Data Science

\n", "

Course: Tools and Techniques for Data Science

\n", "\n", "---\n", "

Instructor: Muhammad Arif Butt, Ph.D.

\n" ] }, { "cell_type": "markdown", "id": "3184edc1", "metadata": {}, "source": [ "

Lecture 5.1 (An Overview of Web Scraping)


\n", "\"Open" ] }, { "cell_type": "markdown", "id": "366621b9", "metadata": {}, "source": [ "\n", "" ] }, { "cell_type": "markdown", "id": "51e21f0d", "metadata": {}, "source": [ "" ] }, { "cell_type": "code", "execution_count": null, "id": "77462d4b", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "id": "90f3672f", "metadata": {}, "source": [ "### Web Portals Hosting Datasets\n", "1. https://www.kaggle.com/datasets\n", "2. https://data.gov/\n", "3. https://archive.ics.uci.edu/ml/datasets.php\n", "4. https://datahub.io/collections\n", "5. https://apps.who.int/gho/data/node.home" ] }, { "cell_type": "markdown", "id": "01a92341", "metadata": {}, "source": [ "### Web APIs\n", "1. What is an API: https://www.altexsoft.com/blog/engineering/what-is-api-definition-types-specifications-documentation/\n", "2. Famous Web APIs\n", " - https://developers.google.com/apis-explorer\n", " - https://developers.facebook.com/docs/graph-api/overview\n", " - http://www.espn.com/apis/devcenter/docs/\n", " - https://developer.twitter.com/en/docs/twitter-api\n", " - https://www.partners.skyscanner.net/affiliates/travel-apis\n", " - https://openweathermap.org/" ] }, { "cell_type": "code", "execution_count": null, "id": "59d53e6a", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "a8dec05a", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "4fe28349", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "id": "c065f439", "metadata": {}, "source": [ "### What is Web Scraping?\n", "" ] }, { "cell_type": "code", "execution_count": null, "id": "a54f6ca0", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "f44420ff", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "93beaeff", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "id": "927b52ac", "metadata": {}, "source": [ "### How Web Scraping Works?\n", "" ] }, { "cell_type": "code", "execution_count": null, "id": "0d49b3bd", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "50e63f75", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "164da126", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "id": "d222c251", "metadata": {}, "source": [ "### A Comparison?\n", "" ] }, { "cell_type": "markdown", "id": "c772fbf6", "metadata": {}, "source": [ "\n", "\n", "- Requests: https://requests.readthedocs.io/en/latest/\n", "- BeautifulSoup: https://beautiful-soup-4.readthedocs.io/en/latest/\n", "- Selenium: https://selenium-python.readthedocs.io\n", "- Scrapy: https://scrapy.org" ] }, { "cell_type": "code", "execution_count": null, "id": "f0da95b4", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "b52007f1", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "56c71dfc", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "id": "a2e6d610", "metadata": {}, "source": [ "\n", "\n", "## Is Web Scraping Legal?\n", "- The legality of web scraping depends on the context of how you extract the data and how you plan to use it. Copying information from public domain websites for your own personal review and analysis is normally permissible. But re-using other people’s copyrighted content for profit may be unethical and possibly illegal. It’s important that you discuss your plans with legal counsel to ensure that your use is in compliance with copyright laws.\n", "- https://en.wikipedia.org/robots.txt\n", "- https://twitter.com/robots.txt\n", "- https://www.youtube.com/robots.txt\n", "- https://facebook.com/robots.txt\n", "- https://www.amazon.com/robots.txt" ] }, { "cell_type": "markdown", "id": "5c27a5fa", "metadata": {}, "source": [ "" ] }, { "cell_type": "code", "execution_count": null, "id": "59bcdd5b", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "ee42d963", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "81d5fba7", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "id": "81c01c5f", "metadata": {}, "source": [ "### A Bit of Motivation" ] }, { "cell_type": "code", "execution_count": 34, "id": "31408ec8", "metadata": {}, "outputs": [], "source": [ "%run scrap_IK_tweets.py" ] }, { "cell_type": "code", "execution_count": null, "id": "87dd0d99", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "3eb36e87", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "010ebccb", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "02371ebc", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "id": "71c387d1", "metadata": {}, "source": [ "### Brush-up Your HTML, CSS, JavaScript Skills\n", "- Basics of HTML: https://webplatform.github.io/docs/html/\n", "- Basics of CSS: https://webplatform.github.io/docs/css/\n", "- Basics of JS: https://webplatform.github.io/docs/javascript/" ] }, { "cell_type": "code", "execution_count": null, "id": "c9578b8a", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "b9c8a8fb", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "24fe8132", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "d34c8102", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "8db2424d", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "id": "e4860d50", "metadata": {}, "source": [ "# Overview of a Web Application Architecture\n", "" ] }, { "cell_type": "code", "execution_count": null, "id": "9d406652", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "2e768397", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "f2087e82", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "bee2567b", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "e56da888", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "id": "99df35ab", "metadata": {}, "source": [ "## The Anatomy of a Web Page\n", "" ] }, { "cell_type": "code", "execution_count": null, "id": "f0ea05c5", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "028b2600", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "46e9fa21", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "id": "9adcc1ef", "metadata": {}, "source": [ "## The Document Object Model\n", "" ] }, { "cell_type": "markdown", "id": "92db641f", "metadata": {}, "source": [ "To read more about Document Object Model: https://developer.mozilla.org/en-US/docs/Web/API/Document_Object_Model/Introduction" ] }, { "cell_type": "code", "execution_count": null, "id": "8c9275d3", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "16b98576", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "534dd6fa", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "id": "560aad1d", "metadata": {}, "source": [ "## Google Chrome Developer Tools" ] }, { "cell_type": "markdown", "id": "00a565ba", "metadata": {}, "source": [ "\n", "To read more about Google Chrome Developer Tools: https://developer.chrome.com/docs/devtools/\n", "\n", "Books Scraping WebSite (Version 1): https://arifpucit.github.io/bss1\n", "\n", "Books Scraping WebSite (Version 2): https://arifpucit.github.io/bss2" ] }, { "cell_type": "code", "execution_count": null, "id": "108023ac", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "7f177071", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "3d8874ea", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "ab8677a9", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "07c03f4a", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "9e75316d", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "563bae08", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "id": "3afdc66a", "metadata": {}, "source": [ "## Fetching Web Page Contents using Python `urllib` Package\n", "- The `urllib` package in Python 3 is a collection of following Python modules used for working with Uniform Resource Locators:\n", " - `urllib.request` for opening and reading URLs, using variety of protocols\n", " - `urllib.error` containing the exceptions raised by urllib.request\n", " - `urllib.parse` for parsing URLs\n", " - `urllib.robotparser` for parsing robots.txt files\n", "- https://docs.python.org/3/library/urllib.html\n", "- https://developer.mozilla.org/en-US/docs/Web/HTTP/Status" ] }, { "cell_type": "markdown", "id": "fc9d48a6", "metadata": {}, "source": [ ">**The `urllib.request.urlopen()`, may return a URLError saying `SSL: CERTIFICATE_VERIFY_FAILED`. To handle this error set the `_create_default_https_context` attribute of `ssl` to `_create_unverified_context`**" ] }, { "cell_type": "code", "execution_count": 2, "id": "17a59d28", "metadata": {}, "outputs": [], "source": [ "import urllib" ] }, { "cell_type": "code", "execution_count": 3, "id": "85b08fba", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "['__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__path__', '__spec__', 'error', 'parse', 'request', 'response']\n" ] } ], "source": [ "print(dir(urllib))" ] }, { "cell_type": "code", "execution_count": 4, "id": "9048ad8b", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "['AbstractBasicAuthHandler', 'AbstractDigestAuthHandler', 'AbstractHTTPHandler', 'BaseHandler', 'CacheFTPHandler', 'ContentTooShortError', 'DataHandler', 'FTPHandler', 'FancyURLopener', 'FileHandler', 'HTTPBasicAuthHandler', 'HTTPCookieProcessor', 'HTTPDefaultErrorHandler', 'HTTPDigestAuthHandler', 'HTTPError', 'HTTPErrorProcessor', 'HTTPHandler', 'HTTPPasswordMgr', 'HTTPPasswordMgrWithDefaultRealm', 'HTTPPasswordMgrWithPriorAuth', 'HTTPRedirectHandler', 'HTTPSHandler', 'MAXFTPCACHE', 'OpenerDirector', 'ProxyBasicAuthHandler', 'ProxyDigestAuthHandler', 'ProxyHandler', 'Request', 'URLError', 'URLopener', 'UnknownHandler', '__all__', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', '__version__', '_cut_port_re', '_ftperrors', '_get_proxies', '_get_proxy_settings', '_have_ssl', '_localhost', '_noheaders', '_opener', '_parse_proxy', '_proxy_bypass_macosx_sysconf', '_randombytes', '_safe_gethostbyname', '_splitattr', '_splithost', '_splitpasswd', '_splitport', '_splitquery', '_splittag', '_splittype', '_splituser', '_splitvalue', '_thishost', '_to_bytes', '_url_tempfiles', 'addclosehook', 'addinfourl', 'base64', 'bisect', 'build_opener', 'contextlib', 'email', 'ftpcache', 'ftperrors', 'ftpwrapper', 'getproxies', 'getproxies_environment', 'getproxies_macosx_sysconf', 'hashlib', 'http', 'install_opener', 'io', 'localhost', 'noheaders', 'os', 'parse_http_list', 'parse_keqv_list', 'pathname2url', 'posixpath', 'proxy_bypass', 'proxy_bypass_environment', 'proxy_bypass_macosx_sysconf', 'quote', 're', 'request_host', 'socket', 'ssl', 'string', 'sys', 'tempfile', 'thishost', 'time', 'unquote', 'unquote_to_bytes', 'unwrap', 'url2pathname', 'urlcleanup', 'urljoin', 'urlopen', 'urlparse', 'urlretrieve', 'urlsplit', 'urlunparse', 'warnings']\n" ] } ], "source": [ "print(dir(urllib.request))" ] }, { "cell_type": "code", "execution_count": 5, "id": "152c2568", "metadata": {}, "outputs": [], "source": [ "import ssl\n", "ssl._create_default_https_context = ssl._create_unverified_context" ] }, { "cell_type": "code", "execution_count": 6, "id": "81ddcfbf", "metadata": {}, "outputs": [], "source": [ "resp = urllib.request.urlopen(\"https://arifpucit.github.io/bss2\")\n" ] }, { "cell_type": "code", "execution_count": 7, "id": "3e44a13c", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "http.client.HTTPResponse" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "type(resp)" ] }, { "cell_type": "code", "execution_count": 8, "id": "266f1d4f", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "['__abstractmethods__', '__class__', '__del__', '__delattr__', '__dict__', '__dir__', '__doc__', '__enter__', '__eq__', '__exit__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__iter__', '__le__', '__lt__', '__module__', '__ne__', '__new__', '__next__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '_abc_impl', '_checkClosed', '_checkReadable', '_checkSeekable', '_checkWritable', '_check_close', '_close_conn', '_get_chunk_left', '_method', '_peek_chunked', '_read1_chunked', '_read_and_discard_trailer', '_read_next_chunk_size', '_read_status', '_readall_chunked', '_readinto_chunked', '_safe_read', '_safe_readinto', 'begin', 'chunk_left', 'chunked', 'close', 'closed', 'code', 'debuglevel', 'detach', 'fileno', 'flush', 'fp', 'getcode', 'getheader', 'getheaders', 'geturl', 'headers', 'info', 'isatty', 'isclosed', 'length', 'msg', 'peek', 'read', 'read1', 'readable', 'readinto', 'readinto1', 'readline', 'readlines', 'reason', 'seek', 'seekable', 'status', 'tell', 'truncate', 'url', 'version', 'will_close', 'writable', 'write', 'writelines']\n" ] } ], "source": [ "print(dir(resp))" ] }, { "cell_type": "code", "execution_count": 9, "id": "07277957", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "200" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "resp.code" ] }, { "cell_type": "code", "execution_count": 10, "id": "cda4ec35", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "b'\\n\\n \\n \\n \\n BSS2\\n \\n \\n\\n \\n \\n\\n \\n \\n\\n \\n \\n
\\n \"arif\"/\\n

Books Scraping Site

\\n \"pucit\"/\\n
\\n
\\n
\\n
\\n \\n
\\n
\\n
Operating Systems
\\n
\\n
\\n \"\"\\n

Operating System Concepts
By Avi Silberschatz

\\n
\\n

Rs.2000

\\n

In stock

\\n
\\n

20 Reviews

\\n \\n
\\n
\\n
\\n \"\"\\n

UNIX The Textbook
By Syed Mansoor Sarwar

\\n
\\n

Rs.5000

\\n

In stock

\\n
\\n

100 Reviews

\\n \\n
\\n
\\n
\\n \"\"\\n

Taxonomy of IDS
By Arif Butt

\\n
\\n

Rs.6900

\\n

Not in stock

\\n
\\n

20 Reviews

\\n \\n
\\n
\\n
\\n \"\"\\n

Understanding operating systems
By Ida Flynn

\\n
\\n

Rs.2700

\\n

Not in stock

\\n
\\n

60 Reviews

\\n \\n
\\n
\\n
\\n \"\"\\n

Computer Systems
By Randal E. Bryant

\\n
\\n

Rs.1700

\\n

In stock

\\n
\\n

25 Reviews

\\n \\n
\\n
\\n
\\n \"\"\\n

Linux bible
Book By Christopher Negus

\\n
\\n

Rs.1800

\\n

Not in stock

\\n
\\n

21 Reviews

\\n \\n
\\n
\\n
\\n \"\"\\n

Advanced Programming in the UNIX Environment
By W. Stevans

\\n
\\n

Rs.6000

\\n

In stock

\\n
\\n

40 Reviews

\\n \\n
\\n
\\n
\\n \"\"\\n

Operating Systems: A Design-oriented Approach
By Charles Patrick Crowley

\\n
\\n

Rs.1000

\\n

In stock

\\n
\\n

90 Reviews

\\n \\n
\\n
\\n
\\n \"\"\\n

Hands-On Network Programming with C
By Lewis Van Winkle

\\n
\\n

Rs.1800

\\n

In stock

\\n
\\n

70 Reviews

\\n \\n
\\n
\\n
\\n
\\n
\\n \\n \\n\\n'\n" ] } ], "source": [ "html = resp.read()\n", "print(html)" ] }, { "cell_type": "code", "execution_count": null, "id": "e3ef7dd7", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "960ac32f", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "e736db8c", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "eca30bd5", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "69ae190e", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "a21deb80", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "f8535ca9", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "3f55f60a", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "0f78cb5d", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "97130ce7", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "0f09ba70", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "id": "91480126", "metadata": {}, "source": [ "## Fetching Web Page Contents using Python `Requests` Library\n", "- `Requests` is an open-source Python library that makes HTTP requests more human-friendly and simple to use.\n", "- The `requests` library support a fully RESTful API and uses commands to obtain resources, such as:\n", " - `request.get()` to retrieve a resource;\n", " - `request.put()` to change the state of or update a resource, which can be an object, file or block\n", " - `request.post()` to create that resource\n", " - `request.delete()` to remove a resource.\n", "- A REST API is an API that conforms to the design principles of the REST, or representational state transfer architectural style:\n", " - Uniform interface\n", " - Client-server decoupling\n", " - Statelessness\n", " - Cacheability\n", " - Layered system architecture\n", "\n", "- https://requests.readthedocs.io/en/latest/" ] }, { "cell_type": "markdown", "id": "6ac0f9ca", "metadata": {}, "source": [ "**Installing Requests Library**" ] }, { "cell_type": "code", "execution_count": 11, "id": "8b046746", "metadata": {}, "outputs": [], "source": [ "import sys\n", "!{sys.executable} -m pip install --upgrade pip -q\n", "!{sys.executable} -m pip install --upgrade requests -q" ] }, { "cell_type": "code", "execution_count": 12, "id": "550d67ff", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "('2.28.1',\n", " ['/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/requests'])" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import requests\n", "requests.__version__ , requests.__path__" ] }, { "cell_type": "markdown", "id": "771574d5", "metadata": {}, "source": [ "**Example 1: Fetching, Reading and saving the HTML code of a Web page in a Text File**" ] }, { "cell_type": "code", "execution_count": 13, "id": "6b80124a", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "['ConnectTimeout', 'ConnectionError', 'DependencyWarning', 'FileModeWarning', 'HTTPError', 'JSONDecodeError', 'NullHandler', 'PreparedRequest', 'ReadTimeout', 'Request', 'RequestException', 'RequestsDependencyWarning', 'Response', 'Session', 'Timeout', 'TooManyRedirects', 'URLRequired', '__author__', '__author_email__', '__build__', '__builtins__', '__cached__', '__cake__', '__copyright__', '__description__', '__doc__', '__file__', '__license__', '__loader__', '__name__', '__package__', '__path__', '__spec__', '__title__', '__url__', '__version__', '_check_cryptography', '_internal_utils', 'adapters', 'api', 'auth', 'certs', 'chardet_version', 'charset_normalizer_version', 'check_compatibility', 'codes', 'compat', 'cookies', 'delete', 'exceptions', 'get', 'head', 'hooks', 'logging', 'models', 'options', 'packages', 'patch', 'post', 'put', 'request', 'session', 'sessions', 'ssl', 'status_codes', 'structures', 'urllib3', 'utils', 'warnings']\n" ] } ], "source": [ "print(dir(requests))" ] }, { "cell_type": "code", "execution_count": 14, "id": "d8ad27d5", "metadata": {}, "outputs": [], "source": [ "resp = requests.get(\"https://arifpucit.github.io/bss2\")" ] }, { "cell_type": "code", "execution_count": 15, "id": "c174cad0", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n" ] } ], "source": [ "print(type(resp))" ] }, { "cell_type": "code", "execution_count": 16, "id": "221cf10c", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "['__attrs__', '__bool__', '__class__', '__delattr__', '__dict__', '__dir__', '__doc__', '__enter__', '__eq__', '__exit__', '__format__', '__ge__', '__getattribute__', '__getstate__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__iter__', '__le__', '__lt__', '__module__', '__ne__', '__new__', '__nonzero__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__setstate__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', '_content', '_content_consumed', '_next', 'apparent_encoding', 'close', 'connection', 'content', 'cookies', 'elapsed', 'encoding', 'headers', 'history', 'is_permanent_redirect', 'is_redirect', 'iter_content', 'iter_lines', 'json', 'links', 'next', 'ok', 'raise_for_status', 'raw', 'reason', 'request', 'status_code', 'text', 'url']\n" ] } ], "source": [ "print(dir(resp))" ] }, { "cell_type": "code", "execution_count": 17, "id": "e7baa8a1", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "200" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "resp.status_code" ] }, { "cell_type": "code", "execution_count": 18, "id": "3f0519f7", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'https://arifpucit.github.io/bss2/'" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" } ], "source": [ "resp.url" ] }, { "cell_type": "code", "execution_count": 19, "id": "c160cefb", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'Connection': 'keep-alive', 'Content-Length': '2757', 'Server': 'GitHub.com', 'Content-Type': 'text/html; charset=utf-8', 'permissions-policy': 'interest-cohort=()', 'Last-Modified': 'Mon, 27 Jun 2022 12:32:49 GMT', 'Access-Control-Allow-Origin': '*', 'ETag': 'W/\"62b9a371-33ad\"', 'expires': 'Sun, 31 Jul 2022 05:52:04 GMT', 'Cache-Control': 'max-age=600', 'Content-Encoding': 'gzip', 'x-proxy-cache': 'MISS', 'X-GitHub-Request-Id': 'DB9E:6669:1DA18F:24947F:62E6162C', 'Accept-Ranges': 'bytes', 'Date': 'Sun, 31 Jul 2022 09:32:02 GMT', 'Via': '1.1 varnish', 'Age': '0', 'X-Served-By': 'cache-qpg1243-QPG', 'X-Cache': 'HIT', 'X-Cache-Hits': '1', 'X-Timer': 'S1659259922.301084,VS0,VE235', 'Vary': 'Accept-Encoding', 'X-Fastly-Request-ID': '849901c2a1026515f3fef3acdc9c36a848c8f5d5'}" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" } ], "source": [ "resp.headers" ] }, { "cell_type": "code", "execution_count": 20, "id": "4fa5d5fa", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'GitHub.com'" ] }, "execution_count": 20, "metadata": {}, "output_type": "execute_result" } ], "source": [ "resp.headers['Server']" ] }, { "cell_type": "code", "execution_count": 21, "id": "030d2013", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'Mon, 27 Jun 2022 12:32:49 GMT'" ] }, "execution_count": 21, "metadata": {}, "output_type": "execute_result" } ], "source": [ "resp.headers['Last-Modified']" ] }, { "cell_type": "code", "execution_count": 22, "id": "95f227ab", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "\n", " \n", " \n", " \n", " BSS2\n", " \n", " \n", "\n", " \n", " \n", "\n", " \n", " \n", "\n", " \n", " \n", "
\n", " \"arif\"/\n", "

Books Scraping Site

\n", " \"pucit\"/\n", "
\n", "
\n", "
\n", "
\n", " \n", "
\n", "
\n", "
Operating Systems
\n", "
\n", "
\n", " \"\"\n", "

Operating System Concepts
By Avi Silberschatz

\n", "
\n", "

Rs.2000

\n", "

In stock

\n", "
\n", "

20 Reviews

\n", " \n", "
\n", "
\n", "
\n", " \"\"\n", "

UNIX The Textbook
By Syed Mansoor Sarwar

\n", "
\n", "

Rs.5000

\n", "

In stock

\n", "
\n", "

100 Reviews

\n", " \n", "
\n", "
\n", "
\n", " \"\"\n", "

Taxonomy of IDS
By Arif Butt

\n", "
\n", "

Rs.6900

\n", "

Not in stock

\n", "
\n", "

20 Reviews

\n", " \n", "
\n", "
\n", "
\n", " \"\"\n", "

Understanding operating systems
By Ida Flynn

\n", "
\n", "

Rs.2700

\n", "

Not in stock

\n", "
\n", "

60 Reviews

\n", " \n", "
\n", "
\n", "
\n", " \"\"\n", "

Computer Systems
By Randal E. Bryant

\n", "
\n", "

Rs.1700

\n", "

In stock

\n", "
\n", "

25 Reviews

\n", " \n", "
\n", "
\n", "
\n", " \"\"\n", "

Linux bible
Book By Christopher Negus

\n", "
\n", "

Rs.1800

\n", "

Not in stock

\n", "
\n", "

21 Reviews

\n", " \n", "
\n", "
\n", "
\n", " \"\"\n", "

Advanced Programming in the UNIX Environment
By W. Stevans

\n", "
\n", "

Rs.6000

\n", "

In stock

\n", "
\n", "

40 Reviews

\n", " \n", "
\n", "
\n", "
\n", " \"\"\n", "

Operating Systems: A Design-oriented Approach
By Charles Patrick Crowley

\n", "
\n", "

Rs.1000

\n", "

In stock

\n", "
\n", "

90 Reviews

\n", " \n", "
\n", "
\n", "
\n", " \"\"\n", "

Hands-On Network Programming with C
By Lewis Van Winkle

\n", "
\n", "

Rs.1800

\n", "

In stock

\n", "
\n", "

70 Reviews

\n", " \n", "
\n", "
\n", "
\n", "
\n", "
\n", " \n", " \n", "\n", "\n" ] } ], "source": [ "print(resp.text)" ] }, { "cell_type": "code", "execution_count": 23, "id": "a4d36e68", "metadata": {}, "outputs": [], "source": [ "with open(\"bss2-index.html\", 'wt') as fd:\n", " fd.write(resp.text)" ] }, { "cell_type": "code", "execution_count": 24, "id": "c462e4c1", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\r\n", "\r\n", " \r\n", " \r\n", " \r\n", " BSS2\r\n", " \r\n", " \r\n", "\r\n", " \r\n", " \r\n", "\r\n", " \r\n", " \r\n", "\r\n", " \r\n", " \r\n", "
\r\n", " \"arif\"/\r\n", "

Books Scraping Site

\r\n", " \"pucit\"/\r\n", "
\r\n", "
\r\n", "
\r\n", "
\r\n", " \r\n", "
\r\n", "
\r\n", "
Operating Systems
\r\n", "
\r\n", "
\r\n", " \"\"\r\n", "

Operating System Concepts
By Avi Silberschatz

\r\n", "
\r\n", "

Rs.2000

\r\n", "

In stock

\r\n", "
\r\n", "

20 Reviews

\r\n", " \r\n", "
\r\n", "
\r\n", "
\r\n", " \"\"\r\n", "

UNIX The Textbook
By Syed Mansoor Sarwar

\r\n", "
\r\n", "

Rs.5000

\r\n", "

In stock

\r\n", "
\r\n", "

100 Reviews

\r\n", " \r\n", "
\r\n", "
\r\n", "
\r\n", " \"\"\r\n", "

Taxonomy of IDS
By Arif Butt

\r\n", "
\r\n", "

Rs.6900

\r\n", "

Not in stock

\r\n", "
\r\n", "

20 Reviews

\r\n", " \r\n", "
\r\n", "
\r\n", "
\r\n", " \"\"\r\n", "

Understanding operating systems
By Ida Flynn

\r\n", "
\r\n", "

Rs.2700

\r\n", "

Not in stock

\r\n", "
\r\n", "

60 Reviews

\r\n", " \r\n", "
\r\n", "
\r\n", "
\r\n", " \"\"\r\n", "

Computer Systems
By Randal E. Bryant

\r\n", "
\r\n", "

Rs.1700

\r\n", "

In stock

\r\n", "
\r\n", "

25 Reviews

\r\n", " \r\n", "
\r\n", "
\r\n", "
\r\n", " \"\"\r\n", "

Linux bible
Book By Christopher Negus

\r\n", "
\r\n", "

Rs.1800

\r\n", "

Not in stock

\r\n", "
\r\n", "

21 Reviews

\r\n", " \r\n", "
\r\n", "
\r\n", "
\r\n", " \"\"\r\n", "

Advanced Programming in the UNIX Environment
By W. Stevans

\r\n", "
\r\n", "

Rs.6000

\r\n", "

In stock

\r\n", "
\r\n", "

40 Reviews

\r\n", " \r\n", "
\r\n", "
\r\n", "
\r\n", " \"\"\r\n", "

Operating Systems: A Design-oriented Approach
By Charles Patrick Crowley

\r\n", "
\r\n", "

Rs.1000

\r\n", "

In stock

\r\n", "
\r\n", "

90 Reviews

\r\n", " \r\n", "
\r\n", "
\r\n", "
\r\n", " \"\"\r\n", "

Hands-On Network Programming with C
By Lewis Van Winkle

\r\n", "
\r\n", "

Rs.1800

\r\n", "

In stock

\r\n", "
\r\n", "

70 Reviews

\r\n", " \r\n", "
\r\n", "
\r\n", "
\r\n", "
\r\n", "
\r\n", " \r\n", " \r\n", "\r\n" ] } ], "source": [ "!cat bss2-index.html" ] }, { "cell_type": "code", "execution_count": null, "id": "bc42c498", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "5117412c", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "id": "a7396997", "metadata": {}, "source": [ "**Example 2: Fetching, Reading and saving an Image from the Web Page in a Binary File**" ] }, { "cell_type": "code", "execution_count": 25, "id": "7f29de9b", "metadata": {}, "outputs": [], "source": [ "url = \"https://arifpucit.github.io/bss2/\" + \"./images/arif.jpg\"\n", "resp = requests.get(url)" ] }, { "cell_type": "code", "execution_count": 26, "id": "33b5bffb", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "200" ] }, "execution_count": 26, "metadata": {}, "output_type": "execute_result" } ], "source": [ "resp.status_code" ] }, { "cell_type": "code", "execution_count": 27, "id": "2a37b798", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "����\u0000\u0010JFIF\u0000\u0001\u0001\u0000\u0000\u0001\u0000\u0001\u0000\u0000��\u0000�\u0000\n", "\u0007\b\u0016\u0016\u0015\u0018\u0016\u0015\u0015\u0018\u0018\u0016\u0018\u001c", "\u0018\u0018\u0018\u0019\u001a\u001a\u0015\u001c", "\u001a\u0018\u001a\u0018\u001a\u0019\u0019\u0018\u0018\u0018\u0018\u001c", "!.%\u001c", "\u001e", "+\u001f\u0018\u0018&8&+/1555\u001a$;@;4?.451\u0001\f", "\f", "\f", "\u0010\u000f\u0010\u001c", "\u0012\u0012\u001e", "4!%$14441444444144441144444444444444144444444444444141��\u0000\u0011\b\u0000�\u0000�\u0003\u0001\"\u0000\u0002\u0011\u0001\u0003\u0011\u0001��\u0000\u001c", "\u0000\u0001\u0000\u0001\u0005\u0001\u0001\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0005\u0001\u0002\u0003\u0004\u0006\u0007\b��\u0000>\u0010\u0000\u0001\u0003\u0002\u0003\u0005\u0005\u0005\u0006\u0005\u0003\u0005\u0000\u0000\u0000\u0000\u0001\u0000\u0002\u0011\u0003!\u0004\u00051\u0012AQaq\u0006\"2��\u0007\u0013���#BRb��r����\u0014s�\u0016$34���\u0000\u0019\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0002\u0003\u0004\u0005��\u0000\u001e", "\u0011\u0001\u0001\u0000\u0002\u0003\u0001\u0001\u0001\u0001\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0002\u0011\u0012!1\u0003AQ\"��\u0000\f", "\u0003\u0001\u0000\u0002\u0011\u0003\u0011\u0000?\u0000�dD@DD\u0004D@DD\u0004DADX��kZ\\�\u001a\u0005�&\u0000�\\gh��a���mR,\u001a{��Ӕ�E�n�A�=��P$>�dj\u0001��^/��D�W0\u001e", ")2�e�\t�]��r%䛒O\u0013u;5?^����`��95�|]\u0001F������F�\u0013ޝ�\u0003��׋�W������^���k\u0018Rce�q#�S�npU@-��I�q�=\n", "���U�&���Y�7D9��\u001c", "��+m�Zt ������2ǹ�\n", "�2?h��\u00001�\u0019 ˧l\r", "�\u0019M���\u0001\u0014\u001e", "G�*8�m�Mഁ2{�?��M\u0007\u0003���4�\u0011\u0015A\u0011\u0010\u0011\u0011\u0001\u0011\u0010\u0011\u0011\u0001\u0011\u0010\u0011\u0011\u0001\u0011\u0010Qkc1�����h\u0013א�W�{a�K\u001d", "N�\u001c", "C���N��\u0001�?U-�X�;]ۺ��\u0011L��\u0001!�\u0011.\u001c", "_�.Ch������Cް�$�ڱ�H1�*lج��63�X�eT\\Ɵ${o�P�Ue@,D���\u0014`�tTs%$@��Q�8��\u0010�����U�\u0006�M�U�?n��\u0006\u0003۹�KO���;#���5���;=��\u000e\u001b��\u001fU󣂚�h*a*����!�;��6ޱz���O��he8�֦׷B\u0001�\u0012�֥�\u0002\"*\b����\b����\b����-+����&�2���{�:\u0002����\u0004q\u0010�\\�\u001e", "�V�?iR�E��\u0016�\u0002��cQÁ�@w�P�p�V\bZ\u001558Ϧ���,DO-�\u0013�O�Y��\u0007��%M�U��\b�����_��'���$2#�8)r^(��7Tq\u0007K+��7V5����j�J���4�5U�+e&\u0015�E��}���\u000b", "�|T��0\u0017~���ebN%�]Ѱ��к���/^S\u001f\u0013/UDE�\u0011\u0011\u0001\u0011\u0010\u0011\u0011\u0001\u0011\u0010\u0011\u0011\u0001\u0011\u0010X�\f", "���Q\u0015��\u0000�S�ܾ����Wʹ��j���n\u001d", "�}Y�Xj��s�ו!��.x\u0001[u\u001a�����\u0016]vS�4n�T�`�\u0002T�\u0006�\u0005��;k�8t֩���\u0001'�����Lo]9z��rY�V�G\u0015����֓2\u0017��<�K�;?�c�d��/��9J=�\u0002���۳�+�xjլ\u0006�y/\bⱙ[������$\u0015�X�v\\Nj�y����ޫ�x������bxl3����x߰����[e��b��w��\f", "�U\u0011\u0016�DD\u0004D@DD\u0004D@DD\u0004DA�����/��GL�\u0013P\u0018�\u0018�\u001b���\u001a��8�\u0000\u0003u��\u0000j���\u001c", "�˃�%�(���7\u001b�t���3L��a�C�;A�d�]�I��L��ߢ���SN�c���\u0006\u0005��YG{�.M��\u00171dA7\\q��[��͘\u000b", "\u0014����\u0016\u0017b��\u0012řm�aY��~$\u0005���\u0012J�]��\u0016��ue|Ń�\u0001���m\u0013�AN;g,�>8�/=l=O34�w{��Qy�9�;ͼ�����W�z/�\u001c", "(\u0014�Ծ�!��,E��.\u001f�f\f", "3\u0006ӽ��\u0012\u0017p�X���舋L�����\b����\b����!{X�p�vfvm\u001d", "B��\u0016Z�v�$\u001d", "dϢ������?#�R��\u0013U�l6�+���oOǼlAe�[}��m�\u001a\u001e", "jZ��<\u0002aX[��d����\u0002|�/wn�\u001d", "M9�N%�0$�:��7�4\u001e", "%�Jc2'����E\u0013�\u0000O� �v�Q>�s)�X֓�*�\u001b~�H`��=��k&\u001f\u0000�0��=���w \u0015p�p&@��E2��\u001a�p/s�q��Df��i��к�\u0015\u001f�\\�u�&�&!b^�,�s��\u0005��ે{\u0001�9�N��1����#�[�af\t��������w)�>7~0\u00160\u0000X~���4���nAW��\u0004J�}\u001d", "�\u0005r�v�#�}��0�&\u001e", "v�;�p9.�Gd\u0014CpԚ4�gŠ�T��c5#ɕݪ�\"�\b����\b����\b����0b�,p��|��:�kȰ��^�PKH�\b�/3s\b\u0005�o\u0010�\u0011b�}}��\u0000\u000b", "�-����0϶�/G\u001d", "x]nP|.u�T�J[M�Q�p�7ٺ��>�^ƺ�'\u0016�@7.\u0004��:�\u0006\u001a\u0014�\"�j��ãU4��=���u9y�+�نXuP9�{ɔF�0���0\\��\r", "��k9`X�t�}\r", "�*;\u0012n���:(���7�Vu�W��Z�v\u0012�:�\u0001�a�\n", "]F�u���\";��Q*I}\f", "|�\r", "�������\b����\b����\b�����2W=��mE�l\u001d", "\u001a\u0019�\u0005��Ŷ�K�`\u0001<� 7�������zy\r", "zd9��!�\u0011�\u0011�V��6�156����;ԓ\n", "8���p��U3I𯫊��)�D�,mn&\u001a����+\u001c", "^�'�>*����!�c���\u0015�1�h\u0000\b��[��\u001d", "�9-c��ܢA��vld\u001b�P��ѻ[�y\u0005\u0007�`k�[ GOD�\u000b", "L�OU2��9K\u0015\u000f\u0006 \u0015(j�s�1�\u0004��)\n", "u�\u0005����k�ԹY{9��\u0000S�m3��^%�#hO��ľһoe�\u00015kH$\u0001L\u001b����赆<�c<�+�\u0018�\u0000\u0002�X\u000e��E�y\u0004D@DD\u0004D@DD\u0004D@DD\u0004E\u001b�f���ڨn|-\u001a��\u001f�\f", "��aN�7T���7Rw�\u0000o'��3�e\\^\u001a�j`���m�\u0018\f", "���n�3�{�թ���i��\u0018'd\tә�{�x\u001d", "��ry�n\u001e", "�E��6.0^zno�M��&e��\u0014����Th!��Ap�\u0013\u001c", "W��X��q�Q�n>w�\u0000�G0��(��{l�\u0011�N\\�[����8�.^\bc/s��. �\u0015�\u001c", "��؅��j��P������\u000b", "\u001d", "�b\u001a�\\,B�;;��\f", "M\u001a�w�y�3�q����\u0014Ә���y.s�$�'���\u0015:�\f", "������7��f�˦���\"�\u0018[�LJ4�\\4?�A�8��\u0007\u0002d[��������\u001aO#�\u001b0�#W���y(�\u0018͂^{�\r", "!���\t^y�\u001c", "�\u001e", "�|��O;̅&\u0000�\u001d", "Y�a�\u0006�����(*�m|3�X��G��ȝA'Q�T��\u0019;Q�4p�Oz�\n", "ǖ9�_/s�Z`�\u001d", "9.�r�8ܭ�~b�ڎ�\u0013\u0004�\"�\u0013\u001d", "�3C5\u001fȁ�\u0016�J嗫!�/Z�z\"�Zs�ƃ��׫�DY�\u0011\u0018�U��\u0011r��~�{�b��p�\u0000�>eU\u0016��*q\u0011\u0017D\u0011\u0011\u0007��\n" ] } ], "source": [ "print(resp.text)" ] }, { "cell_type": "code", "execution_count": 28, "id": "107f675f", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "b'\\xff\\xd8\\xff\\xe0\\x00\\x10JFIF\\x00\\x01\\x01\\x00\\x00\\x01\\x00\\x01\\x00\\x00\\xff\\xdb\\x00\\x84\\x00\\n\\x07\\x08\\x16\\x16\\x15\\x18\\x16\\x15\\x15\\x18\\x18\\x16\\x18\\x1c\\x18\\x18\\x18\\x19\\x1a\\x1a\\x15\\x1c\\x1a\\x18\\x1a\\x18\\x1a\\x19\\x19\\x18\\x18\\x18\\x18\\x1c!.%\\x1c\\x1e+\\x1f\\x18\\x18&8&+/1555\\x1a$;@;4?.451\\x01\\x0c\\x0c\\x0c\\x10\\x0f\\x10\\x1c\\x12\\x12\\x1e4!%$14441444444144441144444444444444144444444444444141\\xff\\xc0\\x00\\x11\\x08\\x00\\xe1\\x00\\xe1\\x03\\x01\"\\x00\\x02\\x11\\x01\\x03\\x11\\x01\\xff\\xc4\\x00\\x1c\\x00\\x01\\x00\\x01\\x05\\x01\\x01\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x05\\x01\\x02\\x03\\x04\\x06\\x07\\x08\\xff\\xc4\\x00>\\x10\\x00\\x01\\x03\\x02\\x03\\x05\\x05\\x05\\x06\\x05\\x03\\x05\\x00\\x00\\x00\\x00\\x01\\x00\\x02\\x11\\x03!\\x04\\x051\\x12AQaq\\x06\"2\\x81\\x91\\x07\\x13\\xa1\\xb1\\xc1#BRb\\xd1\\xf0r\\x82\\xb2\\xe1\\xf1\\x14s\\x92\\x16$34\\xc2\\xff\\xc4\\x00\\x19\\x01\\x01\\x01\\x01\\x01\\x01\\x01\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x01\\x02\\x03\\x04\\x05\\xff\\xc4\\x00\\x1e\\x11\\x01\\x01\\x00\\x02\\x03\\x01\\x01\\x01\\x01\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x00\\x01\\x02\\x11\\x12!1\\x03AQ\"\\xff\\xda\\x00\\x0c\\x03\\x01\\x00\\x02\\x11\\x03\\x11\\x00?\\x00\\xf6dD@DD\\x04D@DD\\x04DADX\\xea\\xd4kZ\\\\\\xe2\\x1a\\x05\\xc9&\\x00\\xf3\\\\gh\\xfd\\xa3a\\xb0\\xf2\\xca\\x7fmR,\\x1a{\\xa3\\x86\\xd3\\x94\\xb6E\\x93n\\xddA\\xe6=\\xaa\\xc2P$>\\xb3dj\\x01\\x98\\xf4^/\\x9c\\xfbD\\xc7W0\\x1e)2\\xe3e\\x80\\t\\x9b]\\xc6\\xe5r%\\xe4\\x9b\\x92O\\x13u;5?^\\xf1\\x8d\\xf6\\xa1\\x81`\\xee\\xb9\\xf595\\x84|]\\x01F\\xd5\\xf6\\xbd\\x86\\x91\\xb3F\\xb1\\x13\\xde\\x9d\\x81\\x03\\x88\\xbd\\xd7\\x8b\\xefW\\xec\\xc0\\xbe\\xa9\\xab\\xfd^\\x9e\\xda\\xcfk\\x18Rce\\xe0q#\\xf4S\\xb9\\x7fnpU@-\\xac\\xd0I\\x88q\\x83=\\n\\xf9\\xc5\\xc2U\\xa4&\\xa9\\xd3\\xea\\x9aY\\xa57D9\\xb7\\xd2\\x1c\\xd3\\xf2+m\\x95Zt \\xaf\\x94\\xb0\\xb8\\xba\\x8c2\\xc7\\xb9\\xbd\\n\\xec2?h\\xf8\\x8a\\x001\\xe1\\xb5\\x19 \\xcb\\xa7l\\r\\xe0\\x19M\\xd9\\xe9\\xa8\\xfa\\x01\\x14\\x1eG\\xda*8\\x9am\\xa9M\\xe0\\xb4\\x812{\\xcd?\\x85\\xc1M\\x07\\x03\\xa2\\xb2\\xed4\\xbd\\x11\\x15A\\x11\\x10\\x11\\x11\\x01\\x11\\x10\\x11\\x11\\x01\\x11\\x10\\x11\\x11\\x01\\x11\\x10Qkc1\\x8c\\xa4\\xc2\\xf7\\x98h\\x13\\xd7\\x90\\xe6\\xb6W\\x94{a\\xcfK\\x1dN\\x83\\x1cC\\xa1\\xc5\\xf0N\\x8e\\x80\\x01\\x8f?U-\\xd4X\\xe5;]\\xdb\\xba\\xf8\\xc7\\x11L\\xba\\x9d\\x01!\\xac\\x11.\\x1c_\\xfa.Ch\\x8b\\xab\\x99\\xa1\\x8b\\xf1C\\xde\\xb0\\xd5$\\xd2\\xda\\xb1\\xf2H1\\xfa*l\\xd8\\xac\\x81\\x9b63\\xf4X\\xcbeT\\\\\\xc6\\x9f${o\\xc9P\\x98Ue@,D\\x8f\\xae\\xe4\\x14`\\x8dtTs%$@\\xdd\\xc9Q\\xb58\\xa0\\xa0\\x10\\xac\\x82\\xb3\\xf2\\xe4U\\xa5\\x06\\xf6M\\x9cU\\xc3?n\\x9b\\xc8\\x06\\x03\\xdb\\xb9\\xed\\x90KO\\xa6\\xab\\xdf;#\\x9f\\xd3\\xc55\\xaf\\xa6\\xf9;=\\xf6\\xef\\x0e\\x1b\\x8d\\xb5\\x1fU\\xf3\\xa3\\x82\\x9a\\xec\\x9fh*a*\\x87\\xb0\\x90\\xc3!\\xed;\\xc1\\x896\\xde\\xb1z\\xed\\xa9\\xdfO\\xa6\\xd1he8\\xf6\\xd6\\xa6\\xd7\\xb7B\\x01\\xf5\\x12\\xb7\\xd6\\xa5\\xdb\\x02\"*\\x08\\x88\\x80\\x88\\x88\\x08\\x88\\x80\\x88\\x88\\x08\\x88\\x80\\x88\\x88-+\\xe6\\xee\\xda\\xe6&\\xbe2\\xb3\\x8e\\x8d{\\x9a:\\x02\\xbe\\x8f\\xaa\\xd9\\x04q\\x10\\xbe\\\\\\xce\\x1e\\x7f\\xd4V\\x93?iR\\xe0E\\x83\\xc8\\x16\\xe8\\x02\\xcd\\xf5cQ\\xc3\\x81\\x85@w\\xddP\\xbfp\\x85V\\x08Z\\x1558\\xcf\\xa6\\x8a\\xaf\\xae,DO-\\xcb\\x13\\x9cO\\xf9Y\\xb0\\xf8\\x07\\xbf\\xc2%M\\xc3U\\x8f\\xde\\x08\\xbe\\xaa\\xa1\\x84\\xe8\\xb6_\\x95\\xbe\\'\\x86\\xe5\\xb0\\xda$2#\\xbc8)r^(\\xe2\\xc87Tq\\x07K+\\xab\\x837V5\\xaa\\xec\\xd2\\xed\\x95j\\xb8J\\xb1\\xd4\\xcf4\\xb55U\\x9b+e&\\x15\\xaeE\\xd3\\xde}\\x91\\xe6\\x9e\\xf3\\x0b\\xb0|T\\xed\\xe50\\x17~\\xbc\\x87\\xd8ebN%\\xbb]\\xd1\\xb0\\xe0\\xd8\\xd0\\xba\\xc4\\xcf\\xf2\\x8b/^S\\x1f\\x13/UDE\\xa4\\x11\\x11\\x01\\x11\\x10\\x11\\x11\\x01\\x11\\x10\\x11\\x11\\x01\\x11\\x10X\\xed\\x0c\\xaf\\x95\\xf3Q\\x15\\xea\\xff\\x00\\xb9S\\xfa\\xdc\\xbe\\xa7\\xab\\xa1\\xe8W\\xca\\xb9\\xa1\\xfbj\\x93\\xf8\\xdfn\\x1d\\xf2\\xb3}Y\\xe3Xj\\xb2\\x8as\\xa2\\xd7\\x95!\\x96\\xd3.x\\x01[u\\x1a\\x91\\xb3\\x83\\xcb\\xe4\\x89\\x16]vS\\x974n\\xf5T\\xc0`\\x80\\x02T\\xf5\\x06\\xec\\x8b\\x05\\xe6\\xcb;k\\xbe8t\\xd6\\xa9\\x95\\xb4\\xcc\\x01\\'\\x92\\x8a\\xc4\\xe4\\xc6Lo]9z\\xc2\\xf7rY\\xb9V\\xb8G\\x15\\x8b\\xec\\xfb\\x8d\\xd6\\x932\\x17\\x9d\\xf0<\\xbeK\\xbd;?\\xe5c\\xd9d\\xa9\\xcf/\\xe9\\xc29J=\\x9f\\x02\\xf2\\xb2\\xd5\\xc9\\xdb\\xb3\\xa9+\\xa5xj\\xd5\\xac\\x06\\xe5\\x8ey/\\x08\\xe2\\xb1\\x99[\\x84\\x98\\xb2\\x84\\xa8\\xd8$\\x15\\xe8X\\x9av\\\\Nj\\xc8y\\xb2\\xef\\xf2\\xce\\xde\\xab\\x96x\\xe9\\xe8\\xde\\xc2\\xc7\\xdabxl3\\xfa\\x9c\\xbd\\x91x\\xdf\\xb0\\xc9\\xf7\\x98\\x9b[e\\x97\\xfeb\\xbd\\x91w\\xc7\\xc7\\x0c\\xbdU\\x11\\x16\\x90DD\\x04D@DD\\x04D@DD\\x04DA\\x8e\\xae\\x87\\xa1\\xf9/\\x96\\xfbGL\\xb7\\x13P\\x18\\xf1\\x18\\x8e\\x1b\\x8a\\xfa\\x83\\x1a\\xf0\\xd68\\x93\\x00\\x03u\\xf3\\xff\\x00j\\xb2\\x81\\xef\\x1c\\xf6\\xcb\\x83\\x89%\\xdf(\\xf8\\xac\\xdb7\\x1b\\xc6t\\xe2\\xc2\\xe8\\xbb3L\\x97\\xe9a\\xbdC\\x7f\\xa6;A\\xa2d\\x98]\\xc6I\\x97\\x8aL\\xbf\\x88\\xdf\\xa2\\xe7\\xf4\\xcbSN\\x98c\\xbb\\xb4\\xe5\\x06\\x05\\xbe\\xc6YG{\\xd0.M\\x96\\xd6\\x171dA7\\\\q\\xc6\\xd7[\\x94\\x8d\\xcd\\x98\\x0b\\x14\\xa3\\xb1\\xec\\xe2\\x16\\x17b\\xc1\\xde\\x12\\xc5\\x99m\\x9baY\\xb2\\xae~$\\x05\\x8d\\xf5\\xc0\\x12J\\x9a]\\xac\\xa8\\x16\\xb3\\xdbue|\\xc5\\x83\\xef\\x01\\xe6\\xa2\\xeb\\xe7m\\x13\\xb2AN;g,\\xe3>8\\xae/=l=O34\\xdbw{\\xe1\\xf5Qy\\xfd9\\xd9;\\xcd\\xbc\\x95\\xc3\\xfc\\xe4\\xceW\\x94z/\\xb1\\x1c(\\x14\\xea\\xd4\\xbe\\xd1!\\xba\\xda,E\\x97\\xab.\\x1f\\xd9f\\x0c3\\x06\\xd3\\xbd\\xda\\xf9\\x12\\x17p\\xbdX\\xf8\\xf3\\xe5\\xe8\\x88\\x8bL\\x88\\x88\\x80\\x88\\x88\\x08\\x88\\x80\\x88\\x88\\x08\\x88\\x80\\x88\\x88!{X\\xd2p\\x95vfvm\\x1dB\\xf2\\xdc\\x16Z\\xe8v\\xd1$\\x1dd\\xcf\\xa2\\xf5\\xcc\\xed\\xb3\\x87\\xaa?#\\xbeR\\xbc\\xc7\\x13U\\xcdl6\\xce+\\xcf\\xf4\\xf7oO\\xc7\\xbclAe\\xb9[}\\xe3\\x9c\\xe6\\x89m\\x9b\\x1a\\x1ejZ\\xa8\\x81<\\x02aX[\\xe2\\xd5d\\xc4\\xe1\\xcb\\xdb\\x02|\\x96/wn\\x93\\x1dM9\\xbcN%\\xce0$\\xad:\\xb8\\x977\\xef4\\x1e%\\xc1Jc2\\'\\x86\\x90\\xd3\\xea\\x7fE\\x13\\xff\\x00O\\x82 \\xc8v\\xbbQ>\\xabs)\\xe3\\x96X\\xd6\\x93\\xb3*\\x93\\x1b~\\x85H`\\xb1\\xce=\\xd2\\xeb\\x9ek&\\x1f\\x00\\xd60\\xb4\\xb4=\\xc6\\xe5\\xc7w \\x15p\\xd9p&@\\xdf\\xc3E2\\xc8\\xc7\\x1a\\xe8p/s\\x99q\\xa7\\xc5Df\\xf9\\x81i\\xb9\\x8d\\xd0\\xba\\x8c\\x15\\x1f\\xb3\\\\\\x8eu\\x85&\\xa1&!b^\\xdd,\\xbas\\xb5\\xf1\\x05\\xc6\\xe4\\x99\\xe0\\xab\\x87{\\x01\\xef9\\xc1N\\xd7\\xc31\\xcc\\xd8\\xd9\\xd9#\\xc2[\\xb9af\\t\\x81\\x85\\x81\\xa4\\x93\\xab\\x8e\\xabw)\\xa7>7~0\\x160\\x00X~\\xb2\\xb6\\xb14\\x83\\x9a\\xc2nAW\\xe1\\xf2\\xb2\\x04J\\xdb}\\x1d\\x91\\x05r\\xb9v\\xe9#\\xd4}\\x9c\\xe1\\x8b0\\xd3&\\x1ev\\x80;\\xadp9.\\xb9Gd\\x14Cp\\xd4\\x9a4\\xd8g\\xc5\\xa0\\xfdT\\x8a\\xf6c5#\\xc9\\x95\\xdd\\xaa\\xa2\"\\xd2\\x08\\x88\\x80\\x88\\x88\\x08\\x88\\x80\\x88\\x88\\x08\\x88\\x80\\x88\\x880b\\xdb,p\\xe2\\xd7|\\x97\\x97:\\xcek\\xc8\\xb0\\x8f\\xd9^\\xa9PKH\\xe2\\x08\\xf8/3s\\x08\\x05\\x8eo\\x10\\xe1\\xbc\\x11b\\xb8}}\\x8e\\xff\\x00\\x0b\\xea-\\xf5\\xa5\\xee\\xea\\xb70\\xcf\\xb6\\xaa/G\\x1dx]nP|.u\\xdaT\\x8dJ[M\\xb1Q\\xd5p\\x8d7\\xd9\\xba\\xdd\\xc3>\\xf2\\xb7^\\xc6\\xba\\xfa\\'\\x16\\xba@7.\\x04\\xe9\\xea\\xb2:\\x80\\x06\\x1a\\x14\\x86\"\\xa0j\\xc2\\xcb\\xc3\\xa3U4\\xad\\xac=\\x98\\xb9\\x9cu9y\\x9e+\\xa9\\xd9\\x86XuP9\\x83{\\xc9\\x94F\\x9b0\\x9c\\x96\\xc30\\\\\\x96\\xc6\\r\\xe0\\x8ek9`X\\xb1t\\xd2}\\r\\x91*;\\x12n\\xa4\\xab\\xd4:(\\x9a\\xcf\\xef7\\xceVu\\xdaW\\xb3\\xf6Z\\xa1v\\x12\\x89:\\xec\\x01\\xe9a\\xf0\\n]F\\xf6u\\xb1\\x86\\xa2\";\\x8d\\xb7Q*I}\\x0c|\\x8f\\r\\xf6\\xaa\\x88\\x8a\\xa0\\x88\\x88\\x08\\x88\\x80\\x88\\x88\\x08\\x88\\x80\\x88\\x88\\x08\\x88\\x82\\x8b\\x9f\\xcf2W=\\xde\\xf2\\x94mE\\xdal\\x1d\\x1a\\x19\\xe2\\xba\\x05\\xaf\\x8b\\xc5\\xb6\\x9bK\\x9e`\\x01<\\xcf 7\\x95\\x9c\\xa4\\xb3\\xb5\\xc6\\xd9zy\\rzd9\\xc1\\xd6!\\xc4\\x11\\xbc\\x11\\xa8V\\xe1\\xdf6\\xe0\\xb6156\\xdc\\xf7\\xe9\\xb4\\xe7;\\xd4\\x93\\n8\\xbc\\xb5\\xf3\\xb9p\\xb1\\xe9\\x97U3I\\xf0\\xaf\\xab\\x8a\\x80\\xb5)\\xbeD\\xad,mn&\\x1a\\xb3\\xba\\xe9\\xb9\\xeb+\\x1c^\\xf2\\'\\xba>*\\x98\\xcc\\xe4\\xd2!\\xaec\\xa3\\x88\\xd2\\x15\\x941\\xadh\\x00\\x08\\x9d\\xe5[\\x8b\\xef\\x82\\x1d\\xe49-c\\x8d\\x8c\\xdc\\xa2A\\x99\\xd3vld\\x1b\\xf3P\\xf8\\xcc\\xd1\\xbb[\\xdcy\\x05\\x07\\x8d`k\\xf6[ GOD\\xa2\\x0bL\\x82OU2\\x89\\xc99K\\x15\\x0f\\x06 \\x15(j\\xd9s\\xb51\\x82\\x04\\x8f\\xd4)\\nu\\xe4\\x05\\xce\\xf4\\xdc\\xcbk\\xab\\xd4\\xb9Y{9\\x80\\xff\\x00S\\x89m3\\xe1\\x82\\xe7^%\\xad#hO\\x9a\\xd0\\xc4\\xbe\\xd2\\xbboe\\xb8\\x015kH$\\x01L\\x1b\\xcd\\xe1\\xc7\\xe9\\xe8\\xb5\\x86<\\xb2c<\\xb5+\\xd1\\x18\\xd0\\x00\\x02\\xc0X\\x0e\\x8a\\xf4E\\xecy\\x04D@DD\\x04D@DD\\x04D@DD\\x04E\\x1b\\x9cf\\xf4\\xf0\\xec\\xda\\xa8n|-\\x1a\\xb8\\xf0\\x1f\\xaa\\x0c\\xb9\\x9eaN\\x857T\\xaa\\xe0\\xd67Rw\\xf0\\x00o\\'\\x82\\xe03\\xdce\\\\^\\x1a\\xa5j`\\xb4\\x91\\xf6m\\xde\\x18\\x0c\\xbb\\xf9\\x8bn\\xa13\\xbc{\\xf1\\xd5\\xa9\\xb6\\xab\\x8bi\\x97\\x80\\x18\\'d\\t\\xd3\\x99\\xeb{\\xc6x\\x1d\\xc3\\xd5ry\\xdfn\\x1e\\xe1\\xb3E\\xa6\\x986.0^zno\\xc5M\\xae\\x9d&e\\xda\\xca\\x14\\xda\\xfd\\x87\\x87Th!\\xad\\x87Ap\\xb4\\x13\\x1cW\\x9b\\xe6X\\xd7\\xd6q\\xa9Q\\xdbn>w\\xb7\\x00\\xedG0\\xbc\\xee\\x86(\\xb1\\xed{l\\xe1\\x11\\xbbN\\\\\\xd7[\\x8b\\xcf\\xd8\\xcc8\\xaa.^\\x08c/s\\xbd\\x86. \\xdc\\x15\\xd3\\x1c\\xbf\\xac\\xd8\\x85\\xed\\xc6j\\xfd\\x87P\\xa0\\xfd\\x97\\x91\\xb4\\xf7\\x0b\\x1d\\x93b\\x1a\\xef\\xba\\\\,B\\xe2;;\\x99\\xbb\\x0cM\\x1a\\xedw\\xb8y\\xb83\\xdcq\\xd1\\xec\\xdd\\xd6\\x14\\xd3\\x98\\xf7\\xbd\\xcfy.s\\xc1$\\xf1\\x9d\\'\\xcb\\xe4\\xa7\\xf2\\xbc\\x15:\\x8c\\x0c\\xa8\\xc0\\xe6\\xc4\\xc1\\x837\\xb8\\xe5\\xb9f\\xe5\\xcb\\xa6\\xa7\\xf9\\xee\"\\xde\\x18[\\xb4\\xc7\\x874\\xf8\\\\4?\\xddA\\xe58\\x7f\\xfb\\x97\\x07\\x02d[\\xac\\xa9\\xbe\\xd0\\xe4\\xd4\\xf0\\x80\\x1aO#\\xde\\x1b0\\xde#W\\xb7\\x80\\x9by(\\xaa\\x18\\xcd\\x82^{\\xce\\r!\\xbc\\xdc\\xed\\t^y\\x87\\x1c\\xb5\\x1e\\x8e|\\xb1\\xdaO;\\xcc\\x85&\\x00\\xc2\\x1dY\\xc7a\\xac\\x06\\xe0\\x9f\\xbc\\xe8\\xd0(*\\xd9m|3\\xd9X\\xd6\\xfbG\\x9b\\xc4\\xc8\\x9dA\\'Q\\xf0T\\xa9\\x96\\x19;Q\\xb64p\\xd6Oz\\xfc\\n\\xc7\\x969\\xf5_/s\\x9cZ`\\x97\\x1d9.\\xd7r\\xea8\\xdc\\xad\\xf5~b\\xd2\\xda\\x8e\\x88\\x13\\x04\\xf5\"\\xeb\\x13\\x1d\\xea\\xb63C5\\x1f\\xc8\\x81\\xe8\\x16\\xa3J\\xe5\\x97\\xab!\\xfc/Z\\xc7z\"\\xe7Zs\\xf9\\xc6\\x83\\xf8\\xc2\\xd7\\xab\\xa1DY\\xbe\\x11\\x18\\xedU\\x8d\\xd1\\x11r\\xad\\xad~\\xa1{\\xf7b\\xbf\\xf4p\\xff\\x00\\xc0>eU\\x16\\xf0\\xf5*q\\x11\\x17D\\x11\\x11\\x07\\xff\\xd9'\n" ] } ], "source": [ "print(resp.content)" ] }, { "cell_type": "code", "execution_count": 29, "id": "8562bb3a", "metadata": {}, "outputs": [], "source": [ "with open('myimg.png', 'wb') as fd:\n", " fd.write(resp.content)" ] }, { "cell_type": "code", "execution_count": 30, "id": "fadfe707", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "����\u0000\u0010JFIF\u0000\u0001\u0001\u0000\u0000\u0001\u0000\u0001\u0000\u0000��\u0000�\u0000\r\n", "\u0007\b\u0016\u0016\u0015\u0018\u0016\u0015\u0015\u0018\u0018\u0016\u0018\u001c", "\u0018\u0018\u0018\u0019\u001a\u001a\u0015\u001c", "\u001a\u0018\u001a\u0018\u001a\u0019\u0019\u0018\u0018\u0018\u0018\u001c", "!.%\u001c", "\u001e", "+\u001f\u0018\u0018&8&+/1555\u001a$;@;4?.451\u0001\f", "\f", "\f", "\u0010\u000f\u0010\u001c", "\u0012\u0012\u001e", "4!%$14441444444144441144444444444444144444444444444141��\u0000\u0011\b\u0000�\u0000�\u0003\u0001\"\u0000\u0002\u0011\u0001\u0003\u0011\u0001��\u0000\u001c", "\u0000\u0001\u0000\u0001\u0005\u0001\u0001\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0005\u0001\u0002\u0003\u0004\u0006\u0007\b��\u0000>\u0010\u0000\u0001\u0003\u0002\u0003\u0005\u0005\u0005\u0006\u0005\u0003\u0005\u0000\u0000\u0000\u0000\u0001\u0000\u0002\u0011\u0003!\u0004\u00051\u0012AQaq\u0006\"2��\u0007\u0013���#BRb��r����\u0014s�\u0016$34���\u0000\u0019\u0001\u0001\u0001\u0001\u0001\u0001\u0001\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0002\u0003\u0004\u0005��\u0000\u001e", "\u0011\u0001\u0001\u0000\u0002\u0003\u0001\u0001\u0001\u0001\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0000\u0001\u0002\u0011\u0012!1\u0003AQ\"��\u0000\f", "\u0003\u0001\u0000\u0002\u0011\u0003\u0011\u0000?\u0000�dD@DD\u0004D@DD\u0004DADX��kZ\\�\u001a\u0005�&\u0000�\\gh��a���mR,\u001a{��Ӕ�E�n�A�=��P$>�dj\u0001��^/��D�W0\u001e", ")2�e�\t�]��r%䛒O\u0013u;5?^����`��95�|]\u0001F������F�\u0013ޝ�\u0003��׋�W������^���k\u0018Rce�q#�S�npU@-��I�q�=\r\n", "���U�&���Y�7D9��\u001c", "��+m�Zt ������2ǹ�\r\n", "�2?h��\u00001�\u0019 ˧l\r", "�\u0019M���\u0001\u0014\u001e", "G�*8�m�Mഁ2{�?��M\u0007\u0003���4�\u0011\u0015A\u0011\u0010\u0011\u0011\u0001\u0011\u0010\u0011\u0011\u0001\u0011\u0010\u0011\u0011\u0001\u0011\u0010Qkc1�����h\u0013א�W�{a�K\u001d", "N�\u001c", "C���N��\u0001�?U-�X�;]ۺ��\u0011L��\u0001!�\u0011.\u001c", "_�.Ch������Cް�$�ڱ�H1�*lج��63�X�eT\\Ɵ${o�P�Ue@,D���\u0014`�tTs%$@��Q�8��\u0010�����U�\u0006�M�U�?n��\u0006\u0003۹�KO���;#���5���;=��\u000e\u001b��\u001fU󣂚�h*a*����!�;��6ޱz���O��he8�֦׷B\u0001�\u0012�֥�\u0002\"*\b����\b����\b����-+����&�2���{�:\u0002����\u0004q\u0010�\\�\u001e", "�V�?iR�E��\u0016�\u0002��cQÁ�@w�P�p�V\bZ\u001558Ϧ���,DO-�\u0013�O�Y��\u0007��%M�U��\b�����_��'���$2#�8)r^(��7Tq\u0007K+��7V5����j�J���4�5U�+e&\u0015�E��}���\u000b", "�|T��0\u0017~���ebN%�]Ѱ��к���/^S\u001f\u0013/UDE�\u0011\u0011\u0001\u0011\u0010\u0011\u0011\u0001\u0011\u0010\u0011\u0011\u0001\u0011\u0010X�\f", "���Q\u0015��\u0000�S�ܾ����Wʹ��j���n\u001d", "�}Y�Xj��s�ו!��.x\u0001[u\u001a�����\u0016]vS�4n�T�`�\u0002T�\u0006�\u0005��;k�8t֩���\u0001'�����Lo]9z��rY�V�G\u0015����֓2\u0017��<�K�;?�c�d��/��9J=�\u0002���۳�+�xjլ\u0006�y/\bⱙ[������$\u0015�X�v\\Nj�y����ޫ�x������bxl3����x߰����[e��b��w��\f", "�U\u0011\u0016�DD\u0004D@DD\u0004D@DD\u0004DA�����/��GL�\u0013P\u0018�\u0018�\u001b���\u001a��8�\u0000\u0003u��\u0000j���\u001c", "�˃�%�(���7\u001b�t���3L��a�C�;A�d�]�I��L��ߢ���SN�c���\u0006\u0005��YG{�.M��\u00171dA7\\q��[��͘\u000b", "\u0014����\u0016\u0017b��\u0012řm�aY��~$\u0005���\u0012J�]��\u0016��ue|Ń�\u0001���m\u0013�AN;g,�>8�/=l=O34�w{��Qy�9�;ͼ�����W�z/�\u001c", "(\u0014�Ծ�!��,E��.\u001f�f\f", "3\u0006ӽ��\u0012\u0017p�X���舋L�����\b����\b����!{X�p�vfvm\u001d", "B��\u0016Z�v�$\u001d", "dϢ������?#�R��\u0013U�l6�+���oOǼlAe�[}��m�\u001a\u001e", "jZ��<\u0002aX[��d����\u0002|�/wn�\u001d", "M9�N%�0$�:��7�4\u001e", "%�Jc2'����E\u0013�\u0000O� �v�Q>�s)�X֓�*�\u001b~�H`��=��k&\u001f\u0000�0��=���w \u0015p�p&@��E2��\u001a�p/s�q��Df��i��к�\u0015\u001f�\\�u�&�&!b^�,�s��\u0005��ે{\u0001�9�N��1����#�[�af\t��������w)�>7~0\u00160\u0000X~���4���nAW��\u0004J�}\u001d", "�\u0005r�v�#�}��0�&\u001e", "v�;�p9.�Gd\u0014CpԚ4�gŠ�T��c5#ɕݪ�\"�\b����\b����\b����0b�,p��|��:�kȰ��^�PKH�\b�/3s\b\u0005�o\u0010�\u0011b�}}��\u0000\u000b", "�-����0϶�/G\u001d", "x]nP|.u�T�J[M�Q�p�7ٺ��>�^ƺ�'\u0016�@7.\u0004��:�\u0006\u001a\u0014�\"�j��ãU4��=���u9y�+�نXuP9�{ɔF�0���0\\��\r", "��k9`X�t�}\r", "�*;\u0012n���:(���7�Vu�W��Z�v\u0012�:�\u0001�a�\r\n", "]F�u���\";��Q*I}\f", "|�\r", "�������\b����\b����\b�����2W=��mE�l\u001d", "\u001a\u0019�\u0005��Ŷ�K�`\u0001<� 7�������zy\r", "zd9��!�\u0011�\u0011�V��6�156����;ԓ\r\n", "8���p��U3I𯫊��)�D�,mn&\u001a����+\u001c", "^�'�>*����!�c���\u0015�1�h\u0000\b��[��\u001d", "�9-c��ܢA��vld\u001b�P��ѻ[�y\u0005\u0007�`k�[ GOD�\u000b", "L�OU2��9K\u0015\u000f\u0006 \u0015(j�s�1�\u0004��)\r\n", "u�\u0005����k�ԹY{9��\u0000S�m3��^%�#hO��ľһoe�\u00015kH$\u0001L\u001b����赆<�c<�+�\u0018�\u0000\u0002�X\u000e��E�y\u0004D@DD\u0004D@DD\u0004D@DD\u0004E\u001b�f���ڨn|-\u001a��\u001f�\f", "��aN�7T���7Rw�\u0000o'��3�e\\^\u001a�j`���m�\u0018\f", "���n�3�{�թ���i��\u0018'd\tә�{�x\u001d", "��ry�n\u001e", "�E��6.0^zno�M��&e��\u0014����Th!��Ap�\u0013\u001c", "W��X��q�Q�n>w�\u0000�G0��(��{l�\u0011�N\\�[����8�.^\bc/s��. �\u0015�\u001c", "��؅��j��P������\u000b", "\u001d", "�b\u001a�\\,B�;;��\f", "M\u001a�w�y�3�q����\u0014Ә���y.s�$�'���\u0015:�\f", "������7��f�˦���\"�\u0018[�LJ4�\\4?�A�8��\u0007\u0002d[��������\u001aO#�\u001b0�#W���y(�\u0018͂^{�\r", "!���\t^y�\u001c", "�\u001e", "�|��O;̅&\u0000�\u001d", "Y�a�\u0006�����(*�m|3�X��G��ȝA'Q�T��\u0019;Q�4p�Oz�\r\n", "ǖ9�_/s�Z`�\u001d", "9.�r�8ܭ�~b�ڎ�\u0013\u0004�\"�\u0013\u001d", "�3C5\u001fȁ�\u0016�J嗫!�/Z�z\"�Zs�ƃ��׫�DY�\u0011\u0018�U��\u0011r��~�{�b��p�\u0000�>eU\u0016��*q\u0011\u0017D\u0011\u0011\u0007��" ] } ], "source": [ "!cat myimg.png" ] }, { "cell_type": "code", "execution_count": 31, "id": "e465015e", "metadata": {}, "outputs": [], "source": [ "from PIL import Image" ] }, { "cell_type": "code", "execution_count": 32, "id": "f4aef962", "metadata": {}, "outputs": [], "source": [ "img = Image.open(\"myimg.png\")" ] }, { "cell_type": "code", "execution_count": 33, "id": "4397ce05", "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "execution_count": 33, "metadata": {}, "output_type": "execute_result" } ], "source": [ "img" ] }, { "cell_type": "code", "execution_count": null, "id": "3b4525da", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "9a7b066b", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "34a691ce", "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "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.8.10" } }, "nbformat": 4, "nbformat_minor": 5 }