06. Jupyter Notebook

ehemalige Veranstaltungen ia3.netz + ia3.data sowie ia4.Netz im Studiengang Interaktive Medien

(c) 2020 Hochschule Augsburg - Fakultät für Informatik - Prof.Dr.Nik Klever

In [ ]:
from telnetlib import Telnet

connection = Telnet('towel.blinkenlights.nl')
response = connection.read_all()
In [ ]:
while True:
    pass
In [ ]:
import time
while True:
    time.sleep(1)
In [2]:
from telnetlib import Telnet

connection = Telnet("www.w3.org",80)
connection.write(b"GET /pub/WWW/TheProject.html HTTP/1.1")
connection.write(b"Host: www.w3.org")
response = connection.read_all()
In [3]:
print(response)
b'HTTP/1.0 400 Bad request\r\nCache-Control: no-cache\r\nConnection: close\r\nContent-Type: text/html\r\n\r\n<html><body><h1>400 Bad request</h1>\nYour browser sent an invalid request.\n</body></html>\n'
In [4]:
print(response.decode('utf-8'))
HTTP/1.0 400 Bad request
Cache-Control: no-cache
Connection: close
Content-Type: text/html

<html><body><h1>400 Bad request</h1>
Your browser sent an invalid request.
</body></html>

In [5]:
with open("test.txt","w") as f:
    f.write("GET /pub/WWW/TheProject.html HTTP/1.1")
    f.write("Host: www.w3.org")
In [9]:
with open("test.txt") as f:
    print(f.read())
GET /pub/WWW/TheProject.html HTTP/1.1Host: www.w3.org
In [6]:
from telnetlib import Telnet

connection = Telnet("www.w3.org",80)
connection.write(b"GET /pub/WWW/TheProject.html HTTP/1.1\r\n")
connection.write(b"Host: www.w3.org\r\n")
response = connection.read_all()
In [7]:
print(response.decode("utf-8"))

In [8]:
from telnetlib import Telnet

connection = Telnet("www.w3.org",80)
connection.write(b"GET /pub/WWW/TheProject.html HTTP/1.1\r\n")
connection.write(b"Host: www.w3.org\r\n")
connection.write(b"\r\n")
response = connection.read_all()
print(response.decode("utf-8"))
HTTP/1.1 301 Moved Permanently
Date: Wed, 21 Nov 2018 08:52:39 GMT
Location: http://www.w3.org/TheProject.html
Cache-Control: max-age=21600
Expires: Wed, 21 Nov 2018 14:52:39 GMT
Content-Length: 241
Content-Type: text/html; charset=iso-8859-1
Vary: upgrade-insecure-requests

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>301 Moved Permanently</title>
</head><body>
<h1>Moved Permanently</h1>
<p>The document has moved <a href="http://www.w3.org/TheProject.html">here</a>.</p>
</body></html>

In [10]:
from telnetlib import Telnet

connection = Telnet("www.w3.org",80)
connection.write(b"GET /TheProject.html HTTP/1.1\r\n")
connection.write(b"Host: www.w3.org\r\n")
connection.write(b"\r\n")
response = connection.read_all()
print(response.decode("utf-8"))
HTTP/1.1 301 Moved Permanently
Date: Wed, 21 Nov 2018 09:10:52 GMT
Location: http://www.w3.org/
Cache-Control: max-age=21600
Expires: Wed, 21 Nov 2018 15:10:52 GMT
Content-Length: 226
Content-Type: text/html; charset=iso-8859-1
Vary: upgrade-insecure-requests

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>301 Moved Permanently</title>
</head><body>
<h1>Moved Permanently</h1>
<p>The document has moved <a href="http://www.w3.org/">here</a>.</p>
</body></html>

In [11]:
from telnetlib import Telnet

connection = Telnet("www.w3.org",80)
connection.write(b"GET / HTTP/1.1\r\n")
connection.write(b"Host: www.w3.org\r\n")
connection.write(b"\r\n")
response = connection.read_all()
print(response.decode("utf-8"))
HTTP/1.1 200 OK
Date: Wed, 21 Nov 2018 09:11:10 GMT
Content-Location: Home.html
Vary: negotiate,accept,Accept-Encoding,upgrade-insecure-requests
TCN: choice
Last-Modified: Mon, 19 Nov 2018 14:15:13 GMT
ETag: "8ac5-57b0525377e40;89-3f26bd17a2f00"
Accept-Ranges: bytes
Content-Length: 35525
Cache-Control: max-age=600
Expires: Wed, 21 Nov 2018 09:21:10 GMT
Content-Type: text/html; charset=utf-8

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<!-- Generated from data/head-home.php, ../../smarty/{head.tpl} -->
<head>
<title>World Wide Web Consortium (W3C)</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="Help" href="/Help/" />
<link rel="stylesheet" href="/2008/site/css/minimum" type="text/css" media="all" />
<style type="text/css" media="print, screen and (min-width: 481px)">
/*<![CDATA[*/
@import url("/2008/site/css/advanced");
/*]]>*/
</style>
<link href="/2008/site/css/minimum" rel="stylesheet" type="text/css" media="only screen and (max-width: 480px)" />
<meta name="viewport" content="width=device-width" />
<link rel="stylesheet" href="/2008/site/css/print" type="text/css" media="print" />
<link rel="shortcut icon" href="/2008/site/images/favicon.ico" type="image/x-icon" />
<meta name="description" content="The World Wide Web Consortium (W3C) is an international community where Member organizations, a full-time staff, and the public work together to develop Web standards." />
<link rel="alternate" type="application/atom+xml" title="W3C News" href="/blog/news/feed/atom" />
</head>
<body id="www-w3-org" class="w3c_public w3c_home">
<div id="w3c_container">
<!-- Generated from data/mast-home.php, ../../smarty/{mast.tpl} -->
<div id="w3c_mast"><!-- #w3c_mast / Page top header -->
<h1 class="logo"><a tabindex="2" accesskey="1" href="/"><img src="/2008/site/images/logo-w3c-mobile-lg" width="90" height="53" alt="W3C" /></a> <span class="alt-logo">W3C</span></h1>
<div id="w3c_nav">
<form id="region_form" action="http://www.w3.org/Consortium/contact">
<div><select name="region">
<option selected="selected" title="Get Information about W3C By Region">W3C By Region</option>
<option value="all">All</option>
<option value="au">Australia</option>
<option xml:lang="de" lang="de" value="de">&#xD6;sterreich
(Austria)</option>
<option lang="nl" xml:lang="nl" value="nl">Belgi&#xEB;
(Belgium)</option>
<option value="za">Botswana</option>
<option xml:lang="pt-br" value="br" lang="pt-br">Brasil
(Brazil)</option>
<option xml:lang="zh-hans" value="cn" lang="zh-hans">&#x4E2D;&#x56FD;
(China)</option>
<option xml:lang="fi" value="fi" lang="fi">Suomi (Finland)</option>
<option xml:lang="de" value="de" lang="de">Deutschland
(Germany)</option>
<option xml:lang="el" value="gr" lang="el">&#x395;&#x3BB;&#x3BB;&#x3AC;&#x3B4;&#x3B1; (Greece)</option>
<option xml:lang="fr" value="fr" lang="fr">France</option>
<option xml:lang="hu" value="hu" lang="hu">Magyarorsz&#xE1;g
(Hungary)</option>
<option xml:lang="hi" value="in" lang="hi">&#x92D;&#x93E;&#x930;&#x924; (India)</option>
<option xml:lang="ga" lang="ga" value="gb">&#xC9;ire (Ireland)</option>
<option xml:lang="he" value="il" lang="he">&#x5D9;&#x5E9;&#x5E8;&#x5D0;&#x5DC; (Israel)</option>
<option xml:lang="it" value="it" lang="it">Italia (Italy)</option>
<option xml:lang="ja" value="jp" lang="ja">&#x65E5;&#x672C; (Japan)</option>
<option xml:lang="ko" value="kr" lang="ko">&#xD55C;&#xAD6D; (Korea)</option>
<option value="za">Lesotho</option>
<option lang="lb" xml:lang="lb" value="nl">L&#xEB;tzebuerg
(Luxembourg)</option>
<option xml:lang="ar" value="ma" lang="ar">&#x627;&#x644;&#x645;&#x63A;&#x631;&#x628;
(Morocco)</option>
<option value="za">Namibia</option>
<option lang="nl" xml:lang="nl" value="nl">Nederland
(Netherlands)</option>
<option xml:lang="ru" value="ru" lang="ru">&#x420;&#x43E;&#x441;&#x441;&#x438;&#x44F; (Russia)</option>
<option xml:lang="fr" value="sn" lang="fr">S&#xE9;n&#xE9;gal</option>
<option xml:lang="es" value="es" lang="es">Espa&#xF1;a (Spain)</option>
<option value="za">South Africa</option>
<option lang="ss" xml:lang="ss" value="za">Swatini
(Swaziland)</option>
<option xml:lang="sv" value="se" lang="sv">Sverige
(Sweden)</option>
<option value="gb">United Kingdom</option>
</select> <input class="button" type="submit" value="Go" /></div>
</form>
<form action="https://www.w3.org/Help/search" method="get" enctype="application/x-www-form-urlencoded">
<!-- w3c_sec_nav is populated through js -->
<div class="w3c_sec_nav"><!-- --></div>
<ul class="main_nav"><!-- Main navigation menu -->
<li class="first-item"><a href="/standards/">Standards</a></li>
<li><a href="/participate/">Participate</a></li>
<li><a href="/Consortium/membership">Membership</a></li>
<li class="last-item"><a href="/Consortium/">About W3C</a></li>
<li class="search-item">
<div id="search-form"><input tabindex="3" class="text" name="q" value="" title="Search" /> <button id="search-submit" name="search-submit" type="submit"><img class="submit" src="/2008/site/images/search-button" alt="Search" width="21" height="17" /></button></div>
</li>
</ul>
</form>
</div>
</div>
<!-- /end #w3c_mast -->
<div id="w3c_main">
<div id="w3c_logo_shadow" class="w3c_leftCol"><img height="32" alt="" src="/2008/site/images/logo-shadow" /></div>
<div class="w3c_leftCol">
<h2 class="offscreen">Site Navigation</h2>
<h3 class="category tMargin"><span class="ribbon"><a href="standards">Web and Industry <img src="/2008/site/images/header-link.gif" alt="Header link" width="13" height="13" class="header-link" /></a></span></h3>
<ul class="theme">
<li><a href="auto/">Automotive</a></li>
<li><a href="tv/">Entertainment (TV and Broadcasting)</a></li>
<li><a href="publishing/">Publishing</a></li>
<li><a href="WebCommerce/">Web Commerce</a></li>
<li><a href="Payments/WG/">Web Payments</a></li>
<li><a href="2013/data/">Web of Data</a></li>
<li><a href="Telco/">Web and Telecommunications</a></li>
<li><a href="WoT/">Web of Things</a></li>
<li><a href="Security">Web Security</a></li>
</ul>
<h3 class="category tMargin"><span class="ribbon"><a href="Consortium/mission.html#principles">Web for All <img src="/2008/site/images/header-link.gif" alt="Header link" width="13" height="13" class="header-link" /></a></span></h3>
<ul class="theme">
<li><a href="/WAI/">Accessibility</a></li>
<li><a href="/International/">Internationalization</a></li>
<li><a title="Popular links to W3C technology information" href="Consortium/siteindex.html#technologies">W3C A&#xA0;to&#xA0;Z (site
map)</a></li>
</ul>
<h3 class="category tMargin"><span class="ribbon"><a href="Consortium/activities">W3C Work Groups <img src="/2008/site/images/header-link.gif" alt="Header link" width="13" height="13" class="header-link" /></a></span></h3>
<ul class="theme">
<li><a href="/Consortium/activities">W3C Groups</a></li>
<li><a title="Member-only group participant guidebook" href="/Guide/">Participant guidebook</a></li>
<li><a href="/community/groups/">Current W3C Community
Groups</a></li>
<li><a href="/community/groups/proposed/">Proposed W3C Community
Groups</a></li>
</ul>
<h3 class="category tMargin"><span class="ribbon"><a href="participate/">Dev Resources <img src="/2008/site/images/header-link.gif" alt="Header link" width="13" height="13" class="header-link" /></a></span></h3>
<ul class="theme">
<li><a href="https://validator.w3.org/">Validators</a></li>
<li><a href="http://www.w3.org/2009/cheatsheet/">W3C
cheatsheet</a></li>
<li><a href="Status.html">More Open Source Software</a></li>
<li><a title="Open Web Platform testing" href="http://web-platform-tests.org/">Web Platform Tests</a></li>
<li><a title="W3C Developer Avenue" href="/developers/"><img src="/2015/10/W3C-Developers_Assets/W3C-Developers-Dark.png" width="150" alt="W3C Developers" />W3C Developer Avenue</a></li>
<li><a title="MOOCs from W3C on edX" href="https://www.edx.org/school/w3cx">W3Cx (Training)</a></li>
<li><a href="participate/">More ways to participate</a></li>
</ul>
<h3 class="category tMargin"><span class="ribbon"><a href="/Member/">Member-only Home <img src="/2008/site/images/header-link.gif" alt="Header link" width="13" height="13" class="header-link" /></a></span></h3>
<ul class="theme">
<li><a href="http://www.w3.org/Consortium/activities">Join a
Group</a></li>
<li><a href="http://www.w3.org/Help/Account/Request/Member">Get a
Member Account</a></li>
</ul>
</div>
<div class="w3c_mainCol">
<div id="w3c_crumbs">
<div id="w3c_crumbs_frame">
<p class="bct"><span class="skip"><a tabindex="1" accesskey="2" title="Skip to content (e.g., when browsing via audio)" href="#w3c_most-recently">Skip</a></span></p>
<br /></div>
</div>
<div class="line">
<div class="unit size2on3">
<div class="main-content">
<h2 class="offscreen">News</h2>
<div id="w3c_slideshow"><div id="w3c_most-recently" class="intro hierarchy vevent_list">
   <div class="event w3c_topstory expand_block">
      <div class="headline">
         <h3 class="h4 tPadding0 bPadding0 summary">
            <span class="expand_section">Selectors Level 3 is a W3C Recommendation</span>
         </h3>
         <p class="date">
            <span class="dtstart published" title="2018-11-06T09:08:10Z"> 6 November 2018 </span> | <a title="Archive: Selectors Level 3 is a W3C Recommendation" href="https://www.w3.org/blog/news/archives/7374">Archive</a>
         </p>
      </div>
      <div class="description expand_description"><p>The <a href="https://www.w3.org/Style/CSS/members">CSS Working Group</a> has published <a href="https://www.w3.org/TR/2018/REC-selectors-3-20181106/">Selectors Level 3</a> as a W3C Recommendation. <a href="https://www.w3.org/TR/2018/REC-selectors-3-20181106/#selector">Selectors</a> are patterns that match against elements in a tree, and as such form one of several technologies that can be used to select nodes in an HTML or XML document. Selectors have been optimized for use with HTML and XML, and are designed to be usable in performance-critical code.</p>
</div>
   </div>
   <div class="event closed expand_block">
      <div class="headline">
         <h3 class="h4 tPadding0 bPadding0 summary">
            <span class="expand_section">First Public Working Draft: CSS Shadow Parts</span>
         </h3>
         <p class="date">
            <span class="dtstart published" title="2018-11-15T10:13:37Z"> 15 November 2018 </span> | <a title="Archive: First Public Working Draft: CSS Shadow Parts" href="https://www.w3.org/blog/news/archives/7396">Archive</a>
         </p>
      </div>
      <div class="description expand_description"><p>The <a href="https://www.w3.org/Style/CSS/members">CSS Working Group</a> has published a First Public Working Draft of <a href="https://www.w3.org/TR/2018/WD-css-shadow-parts-1-20181115/">CSS Shadow Parts</a>. This specification defines the <a href="https://www.w3.org/TR/2018/WD-css-shadow-parts-1-20181115/#selectordef-part">&#x2018;::part()&#x2019;</a> pseudo-element on <a href="https://www.w3.org/TR/css-scoping-1/#shadow-host">shadow hosts</a>, allowing shadow hosts to selectively expose chosen elements from their <a href="https://www.w3.org/TR/css-scoping-1/#shadow-tree">shadow tree</a> to the outside page for styling purposes.</p>
<p><a href="https://www.w3.org/TR/CSS/">CSS</a> is a language for describing the rendering of structured documents (such as HTML and XML) on screen, on paper, in speech, etc.</p>
</div>
   </div>
   <div class="event closed expand_block">
      <div class="headline">
         <h3 class="h4 tPadding0 bPadding0 summary">
            <span class="expand_section">New Resource: The Business Case for Digital Accessibility</span>
         </h3>
         <p class="date">
            <span class="dtstart published" title="2018-11-09T14:48:36Z"> 9 November 2018 </span> | <a title="Archive: New Resource: The Business Case for Digital Accessibility" href="https://www.w3.org/blog/news/archives/7384">Archive</a>
         </p>
      </div>
      <div class="description expand_description"><p><a class="imageLink" href="https://www.w3.org/WAI/business-case/"><img src="https://www.w3.org/blog/news/files/2018/11/wai-business-case-150x150.png" alt="icons: briefcase, shopping cart, gavel, speech bubbles" width="100" height="100" /></a>The WAI Education and Outreach Working Group (<a href="https://www.w3.org/WAI/about/groups/eowg/">EOWG</a>) has published <a href="https://www.w3.org/WAI/business-case/">The Business Case for  Digital Accessibility</a>.</p>
<p>It describes how accessibility can drive innovation, enhance your brand, extend market reach, and minimize legal risk. It includes direct and indirect benefits of accessibility and the risks of not addressing accessibility adequately. It provides case studies and examples that demonstrate how investment in accessibility is good for your organization.</p>
<p>Learn more about the <a href="https://www.w3.org/WAI/">Web Accessibility Initiative</a> (WAI).</p>
</div>
   </div>
   <div class="event closed expand_block">
      <div class="headline">
         <h3 class="h4 tPadding0 bPadding0 summary">
            <span class="expand_section">TTML1 3rd, TTML2, TTML-IMSC1 are W3C Recommendations</span>
         </h3>
         <p class="date">
            <span class="dtstart published" title="2018-11-08T07:34:37Z"> 8 November 2018 </span> | <a title="Archive: TTML1 3rd, TTML2, TTML-IMSC1 are W3C Recommendations" href="https://www.w3.org/blog/news/archives/7381">Archive</a>
         </p>
      </div>
      <div class="description expand_description"><p>The <a href="https://www.w3.org/AudioVideo/TT/">Timed Text Working Group</a> has published the following specifications as W3C Recommendations:</p>
<ul>
<li><a href="https://www.w3.org/TR/2018/REC-ttml1-20181108/">Timed Text Markup Language 1 (TTML1) (Third Edition)</a></li>
<li><a href="https://www.w3.org/TR/2018/REC-ttml2-20181108/">Timed Text Markup Language 2 (TTML2)</a></li>
<li><a href="https://www.w3.org/TR/2018/REC-ttml-imsc1.1-20181108/">TTML Profiles for Internet Media Subtitles and Captions 1.1</a></li>
</ul>
<p>The Timed Text Markup Language is a content type that represents timed text media for the purpose of interchange among authoring systems. TTML Profiles are intended to be used across subtitle and caption delivery applications worldwide, thereby simplifying interoperability, consistent rendering and conversion to other subtitling and captioning formats.</p>
</div>
   </div>
   <div class="event closed expand_block">
      <div class="headline">
         <h3 class="h4 tPadding0 bPadding0 summary">
            <span class="expand_section">W3C Invites Implementations of CSS Containment and Flexible Box Layout Module Level 1</span>
         </h3>
         <p class="date">
            <span class="dtstart published" title="2018-11-08T07:26:52Z"> 8 November 2018 </span> | <a title="Archive: W3C Invites Implementations of CSS Containment and Flexible Box Layout Module Level 1" href="https://www.w3.org/blog/news/archives/7379">Archive</a>
         </p>
      </div>
      <div class="description expand_description"><p>The <a href="https://www.w3.org/Style/CSS/members">CSS Working Group</a> invites implementations of two updated Candidate Recommendations:</p>
<ul>
<li><a href="https://www.w3.org/TR/2018/CR-css-contain-1-20181108/">CSS Containment Module Level 1</a>&#xA0;describes the <a href="https://www.w3.org/TR/2018/CR-css-contain-1-20181108/#propdef-contain">&#x2018;contain&#x2019;</a> property, which indicates that the element&#x2019;s subtree is independent of the rest of the page. This enables heavy optimizations by user agents when used well.</li>
<li><a href="https://www.w3.org/TR/2018/CR-css-flexbox-1-20181108/">CSS Flexible Box Layout Module Level 1</a> describes a CSS box model optimized for user interface design. In the flex layout model, the children of a flex container can be laid out in any direction, and can &#x201C;flex&#x201D; their sizes, either growing to fill unused space or shrinking to avoid overflowing the parent. Both horizontal and vertical alignment of the children can be easily manipulated. Nesting of these boxes (horizontal inside vertical, or vertical inside horizontal) can be used to build layouts in two dimensions.</li>
</ul>
<p><a href="https://www.w3.org/TR/CSS/">CSS</a> is a language for describing the rendering of structured documents (such as HTML and XML) on screen, on paper, etc.</p>
</div>
   </div>
   <div class="event closed expand_block">
      <div class="headline">
         <h3 class="h4 tPadding0 bPadding0 summary">
            <span class="expand_section">First Public Working Draft: Trace Context</span>
         </h3>
         <p class="date">
            <span class="dtstart published" title="2018-11-06T15:04:10Z"> 6 November 2018 </span> | <a title="Archive: First Public Working Draft: Trace Context" href="https://www.w3.org/blog/news/archives/7369">Archive</a>
         </p>
      </div>
      <div class="description expand_description"><p>The <a href="https://www.w3.org/2018/distributed-tracing/">Distributed Tracing Working Group</a> has published a First Public Working Draft of <a href="https://www.w3.org/TR/2018/WD-distributed-tracing-20181106/">Trace Context</a>. A distributed application is an application that consists of multiple components, also known as micro-services, that are deployed and operated separately. The Trace Context specification defines properties intended for event correlation between micro-services to allow various tracing and diagnostics monitoring products to operate together.</p>
</div>
   </div>
   <div class="event closed expand_block">
      <div class="headline">
         <h3 class="h4 tPadding0 bPadding0 summary">
            <span class="expand_section">First Public Working Drafts: Personalization Tools 1.0; Personalization Help and Support 1.0</span>
         </h3>
         <p class="date">
            <span class="dtstart published" title="2018-10-18T09:01:34Z"> 18 October 2018 </span> | <a title="Archive: First Public Working Drafts: Personalization Tools 1.0; Personalization Help and Support 1.0" href="https://www.w3.org/blog/news/archives/7359">Archive</a>
         </p>
      </div>
      <div class="description expand_description"><p>The <a href="https://www.w3.org/WAI/APA/">Accessible Platform Architectures Working Group</a> has published two First Public Working Drafts today:</p>
<ul>
<li><a href="https://www.w3.org/TR/2018/WD-personalization-semantics-tools-1.0-20181018/">Personalization Tools 1.0</a> lists examples of the tools defined values, this is an extension of <a href="https://www.w3.org/TR/personalization-semantics-1.0/">Personalization Explainer 1.0</a>.</li>
<li>
<a href="https://www.w3.org/TR/2018/WD-personalization-semantics-help-1.0-20181018/">Personalization Help and Support 1.0</a>&#xA0;lists examples of the personalized help and support properties. This is an extension of Personalization Explainer 1.0. including the properties of literal, numberfree, easylang, alternative, explain, feedback, moreinfo,extrahelp, helptype.</li>
</ul>
<p>Read more about the <a href="https://www.w3.org/WAI/APA/">Accessible Platform Architectures Working Group</a> and the <a href="https://www.w3.org/WAI/">Web Accessibility Initiative (WAI)</a>.</p>
</div>
   </div>
   <div class="event closed expand_block">
      <div class="headline">
         <h3 class="h4 tPadding0 bPadding0 summary">
            <span class="expand_section">Upcoming Workshop: Web Standardization for Graph Data</span>
         </h3>
         <p class="date">
            <span class="dtstart published" title="2018-10-15T13:49:02Z"> 15 October 2018 </span> | <a title="Archive: Upcoming Workshop: Web Standardization for Graph Data" href="https://www.w3.org/blog/news/archives/7348">Archive</a>
         </p>
      </div>
      <div class="description expand_description"><p>W3C announced today a <a href="https://www.w3.org/Data/events/data-ws-2019/">Workshop on Web Standardization for Graph Data</a>, 4-6 March 2019, in Berlin, Germany. The event is hosted by Neo4J.</p>
<p>This workshop brings together people with an interest in the future of standards relating to graph data, and its ever growing importance in relation to the Internet of Things, smart enterprises, smart cities, etc., open markets of services, and synergies with Artificial Intelligence and Machine Learning (AI/ML).</p>
<p>The scope includes:</p>
<p><em>Harmonising different perspectives on database management systems: </em></p>
<ul>
<li>The role of annotations, e.g. spatial, temporal, provenance, data quality, trust, etc. and opportunities for extending RDF to better support them;</li>
<li>the relationship between RDF and other related approaches, e.g. Labelled Property Graphs and work by ETSI ISG CIM;</li>
<li>requirements for graph query and update languages and</li>
<li>requirements for rule languages for graph data.</li>
</ul>
<p><em>Managing the silos, big data, AI and machine learning:</em></p>
<ul>
<li>Techniques for dealing with incomplete, uncertain and inconsistent knowledge;</li>
<li>different kinds of reasoning, e.g. deductive, inductive, abductive, analogical, spatial, temporal, causal, social, and emotional and</li>
<li>challenges for Big Data, AI/ML, and enterprise knowledge-graphs.</li>
</ul>
<p><em>Scalability, security, trust, APIs and vocabulary development:</em></p>
<ul>
<li>Techniques for mapping data between vocabularies with overlapping semantics, as a basis for scaling across different communities;</li>
<li>digital signatures for RDF and Property graphs, e.g. to verify that the graph hasn&#x2019;t been tampered with;</li>
<li>what&#x2019;s next for remote access to data and information services;</li>
<li>whether it is timely and appropriate to standardise a JavaScript API for Linked Data and</li>
<li>how to make W3C a more attractive venue for work on vocabularies.</li>
</ul>
<p>We aim to share experiences, use case studies, new directions and insights on what&#x2019;s needed for the next generation of Web data standards.</p>
<p>For more information on the workshop, please see <a href="https://www.w3.org/Data/events/data-ws-2019/cfp.html">details and submission instructions</a>, and <a href="https://www.w3.org/Data/events/data-ws-2019/index.html">further background information</a>.&#xA0;Expression of Interest and position statements are due by <strong>15 December 2018</strong>.</p>
</div>
   </div>
</div></div>
<p class="noprint"><span class="more-news"><a href="/blog/news/" title="More News">More news&#x2026;</a> <a title="RSS feed for W3C home page news" href="/blog/news/feed" class="feedlink"><img width="30" height="30" alt="RSS" src="/2008/site/images/icons/rss30" /></a> <a title="Atom feed for W3C home page news" href="/blog/news/feed/atom" class="feedlink"><img width="30" height="30" alt="Atom" src="/2008/site/images/icons/atom30" /></a></span></p>
<div class="w3c_events_talks">
<div class="line">
<div class="unit size1on2">
<div id="w3c_home_talks" class="w3c_upcoming_talks"><div>
<h2 class="category">
    <a title="More Talks&#x2026;" href="/Talks/">
        Talks and Appearances <img src="/2008/site/images/header-link" alt="Header link" width="13" height="13" class="header-link" />
    </a>
</h2>

<ul class="vevent_list">
			
<li class="vevent">
  <p class="date single">
    <span class="dtstart">
	    <span class="year">2018</span><span class="mm-dd">-12-03</span>
    </span>
    <span class="paren">(</span><span class="dd-mmm">03 DEC</span><span class="paren">)</span>
  </p>
  <div class="info-wrap">
    <p class="summary"><a href="https://www.w3.org/blog/talks/event/publishingw3c-3/" rel="bookmark">Publishing@W3C</a></p>
    <p class="source">
                                                          by Ivan Herman    </p>
          <p class="eventtitle">
      	 <a href="https://www.w3.org/blog/talks/venue/les-10-ans-des-assises-du-livre-numerique/" title="Les 10 ans des Assises du livre num&#xE9;rique">Les 10 ans des Assises du livre num&#xE9;rique</a>	 	</p>
            <p class="location">
	Paris, France	    </p>
      </div>
</li>


		
	</ul>
</div></div>
</div>
<div class="unit size1on2 lastUnit">
<div id="w3c_home_upcoming_events" class="w3c_upcoming_events"><h2 class="category"><a title="More Events&#x2026;" href="/participate/eventscal.html">Events <img src="/2008/site/images/header-link" alt="Header link" width="13" height="13" class="header-link" /></a></h2>
  <ul class="vevent_list">
    <li class="vevent">
      <div class="date">
<span class="dtstart"><span class="year">2018</span><span class="mm-dd">-12-10</span></span>
<span class="paren">(</span><span class="dd-mmm">10 DEC</span><span class="paren">)</span>
<span class="date-separator"> &#x2013; </span>
<span class="dtend"><span class="year">2018</span><span class="mm-dd">-12-11</span></span>
<span class="paren">(</span><span class="dd-mmm">11 DEC</span><span class="paren">)</span>
</div>

      <div class="info-wrap">
      <p class="summary">
              <a href="https://www.w3.org/Security/strong-authentication-and-identity-workshop/" class="uri url">  W3C Workshop on Strong Authentication and Identity</a>

      </p>
          <p class="location">Redmond, WA, USA</p>

       <p class="host">Hosted by Microsoft</p>
  

      </div>
    </li>
    <li class="vevent">
      <div class="date">
<span class="dtstart"><span class="year">2019</span><span class="mm-dd">-01-29</span></span>
<span class="paren">(</span><span class="dd-mmm">29 JAN</span><span class="paren">)</span>
<span class="date-separator"> &#x2013; </span>
<span class="dtend"><span class="year">2019</span><span class="mm-dd">-01-30</span></span>
<span class="paren">(</span><span class="dd-mmm">30 JAN</span><span class="paren">)</span>
</div>

      <div class="info-wrap">
      <p class="summary">
              <a href="https://www.w3.org/immersive-web/" class="uri url">Immersive Web Working Group Meeting</a>

      </p>
          <p class="location">Mountain View, CA, USA</p>

       <p class="host">Samsung</p>
  

      </div>
    </li>
    <li class="vevent">
      <div class="date">
<span class="dtstart"><span class="year">2019</span><span class="mm-dd">-03-04</span></span>
<span class="paren">(</span><span class="dd-mmm"> 4 MAR</span><span class="paren">)</span>
<span class="date-separator"> &#x2013; </span>
<span class="dtend"><span class="year">2019</span><span class="mm-dd">-03-06</span></span>
<span class="paren">(</span><span class="dd-mmm"> 6 MAR</span><span class="paren">)</span>
</div>

      <div class="info-wrap">
      <p class="summary">
              <a href="https://www.w3.org/Data/events/data-ws-2019/" class="uri url">W3C Workshop on Web Standardization for Graph Data</a>

      </p>
          <p class="location">Berlin, Germany</p>

       <p class="host">Hosted by Neo4J</p>
  

      </div>
    </li>
    <li class="vevent">
      <div class="date">
<span class="dtstart"><span class="year">2019</span><span class="mm-dd">-04-07</span></span>
<span class="paren">(</span><span class="dd-mmm"> 7 APR</span><span class="paren">)</span>
<span class="date-separator"> &#x2013; </span>
<span class="dtend"><span class="year">2019</span><span class="mm-dd">-04-09</span></span>
<span class="paren">(</span><span class="dd-mmm"> 9 APR</span><span class="paren">)</span>
</div>

      <div class="info-wrap">
      <p class="summary">
              <a href="https://www.w3.org/Member/Meeting/" class="uri url">AC Quebec 2019</a>

      </p>
          <p class="location">Quebec, Canada</p>

         

      </div>
    </li>
    <li class="vevent">
      <div class="date">
<span class="dtstart"><span class="year">2019</span><span class="mm-dd">-09-16</span></span>
<span class="paren">(</span><span class="dd-mmm">16 SEP</span><span class="paren">)</span>
<span class="date-separator"> &#x2013; </span>
<span class="dtend"><span class="year">2019</span><span class="mm-dd">-09-20</span></span>
<span class="paren">(</span><span class="dd-mmm">20 SEP</span><span class="paren">)</span>
</div>

      <div class="info-wrap">
      <p class="summary">
              <a href="https://www.w3.org/2002/09/TPOverview.html" class="uri url">TPAC 2019</a>

      </p>
          <p class="location">Fukuoka, Japan</p>

         

      </div>
    </li>

  </ul></div>
</div>
</div>
</div>
<!-- end events talks --></div>
<!-- end main content --></div>
<div class="unit size1on3 lastUnit">
<h2 class="category"><a href="/Consortium/">About W3C <img src="/2008/site/images/header-link.gif" alt="Header link" width="13" height="13" class="header-link" /></a></h2>
<p class="about">The World Wide Web Consortium (W3C) is an
international community that develops open <a href="/TR/">standards</a> to ensure the long-term growth of the Web.</p>
<p class="about">W3C operates under a <a href="/Consortium/cepc/">Code of Ethics and Professional
Conduct</a>.</p>
<p class="about">Become a <a href="support/">Friend of W3C</a>:
support the <a href="Consortium/mission">W3C mission</a> and free
<a href="/developers/">developer tools</a>.</p>
<div id="w3c_home_recent_blogs"><h2 class="category">
      <a title="More Blog Entries&#x2026;" href="/blog/">W3C Blog <img src="/2008/site/images/header-link" alt="Header link" width="13" height="13" class="header-link" />
      </a>
   </h2><ul class="hentry_list">
      <li class="hentry">
         <p class="entry-title">
            <a href="https://www.w3.org/blog/2018/11/looking-back-at-tpac-2018-public-release-of-w3c-strategic-highlights/" class="uri url" rel="bookmark">Looking back at TPAC 2018; public release of W3C Strategic Highlights</a>
         </p>
         <p class="date">
            <abbr title="2018-11-12" class="published">12 November 2018</abbr> by <span class="author vcard">
               <a class="fn url" href="http://www.w3.org/People/Jeff/">Jeff Jaffe</a>
            </span>
         </p>
      </li>
      <li class="hentry">
         <p class="entry-title">
            <a href="https://www.w3.org/blog/2018/11/publishing-at-tpac-2018/" class="uri url" rel="bookmark">Publishing at TPAC 2018</a>
         </p>
         <p class="date">
            <abbr title="2018-11-01" class="published">1 November 2018</abbr> by <span class="author vcard">Wendy Reid</span>
         </p>
      </li>
      <li class="hentry">
         <p class="entry-title">
            <a href="https://www.w3.org/blog/2018/10/epubcheck-revision-initialised/" class="uri url" rel="bookmark">EPUBCHECK REVISION INITIALIZED!</a>
         </p>
         <p class="date">
            <abbr title="2018-10-23" class="published">23 October 2018</abbr> by <span class="author vcard">Luc Audrain</span>
         </p>
      </li>
   </ul></div>
<!--
          <div id="w3c_home_video">
      <h2 class="category">
        <a href="/participate/podcastsvideo">Featured Video
            <img src="/2008/site/images/header-link.gif" alt="Header link" width
="13" height="13" class="header-link"/>
        </a>
      </h2>
      <p>Here</p>
    </div>
    -->
<div id="w3c_home_new_jobs">
<h2 class="category"><a href="/Consortium/Recruitment/">Jobs
<img src="/2008/site/images/header-link.gif" alt="Header link" width="13" height="13" class="header-link" /></a></h2>
<p>We are hiring:</p>
<ul>
<li>An <a href="https://www.w3.org/Consortium/Recruitment/#finance">Assistant
Director of Finance</a></li>
<li>A <a href="https://www.w3.org/Consortium/Recruitment/#wai-auth-tools">Web
Authoring Tools Accessibility Specialist</a></li>
<li>An <a href="https://www.w3.org/Consortium/Recruitment/#wai-emerging-techs">Emerging
Web Technologies Accessibility Specialist</a></li>
<li>A <a href="https://www.w3.org/Consortium/Recruitment/#wai-eo">Web
Accessibility Education and Training Specialist</a></li>
</ul>
</div>
<div class="hpmt" id="w3c_home_member_testimonials">
<h2 class="category"><a title="Read all Member testimonials" href="/Consortium/Member/Testimonial/">W3C Member Testimonial <img src="/2008/site/images/header-link" alt="Header link" width="13" height="13" class="header-link" /></a></h2>
<div id="w3c_home_member_testimonials_choice"><p class="tPadding0">
         <a rel="nofollow" href="http://https://www.internetacademy.jp/" class="no-border">
            <img class="media" width="60" height="60" alt="Internet Academy logo" src="/Consortium/Member/Testimonial/Logo/1358" />
         </a>
      </p><h3>
         <a rel="nofollow" href="http://https://www.internetacademy.jp/">Internet Academy</a>
      </h3><p>Internet Academy has provided practical and intensive Web development courses based on solid fundamentals since 1995. As a leading school of Web technologies, Internet Academy supports W3C, especially developer relations activities, and spreads the Web around the world.</p></div>
</div>
<div id="w3c_home_video">
<h2 class="category"><a href="https://www.w3.org/WAI/videos/standards-and-benefits.html">Web
Accessibility and W3C standards (Video) <img src="/2008/site/images/header-link.gif" alt="Header link" width="13" height="13" class="header-link" /></a></h2>
<p style="text-align: center"><a href="https://www.w3.org/WAI/videos/standards-and-benefits.html"><img src="https://www.w3.org/blog/wp-content/uploads/2017/12/still.jpg" width="233" alt="Thumbnail of Web Accessibility and W3C Standards Video" /></a></p>
<p>Watch our video on Web Accessibility and W3C standards!</p>
<h2 class="category"><a href="http://vimeo.com/w3c/buildstandards">Web Standards for the Future
(Video) <img src="/2008/site/images/header-link.gif" alt="Header link" width="13" height="13" class="header-link" /></a></h2>
<p style="text-align: center"><a href="http://vimeo.com/w3c/buildstandards"><img src="/2014/10/stdvidthumb.png" alt="Thumbnail of Standards Video" /></a></p>
<p>Check out our short video on Web standards!</p>
</div>
</div>
</div>
<!-- end main col --></div>
</div>
</div>
<!-- Generated from data/footer.php, Array{footer-block.tpl} -->
<div id="w3c_footer">
<div id="w3c_footer-inner">
<h2 class="offscreen">Footer Navigation</h2>
<div class="w3c_footer-nav">
<h3>Navigation</h3>
<ul class="footer_top_nav">
<li><a href="/">Home</a></li>
<li><a href="/standards/">Standards</a></li>
<li><a href="/participate/">Participate</a></li>
<li><a href="/Consortium/membership">Membership</a></li>
<li class="last-item"><a href="/Consortium/">About W3C</a></li>
</ul>
</div>
<div class="w3c_footer-nav">
<h3>Contact W3C</h3>
<ul class="footer_bottom_nav">
<li><a href="/Consortium/contact">Contact</a></li>
<li><a accesskey="0" href="/Help/">Help and FAQ</a></li>
<li><a href="/Consortium/sponsor/">Sponsor / Donate</a></li>
<li><a href="/Consortium/siteindex">Site Map</a></li>
<li>
<address id="w3c_signature"><a href="http://lists.w3.org/Archives/Public/site-comments/">Feedback</a></address>
</li>
</ul>
</div>
<div class="w3c_footer-nav">
<h3>W3C Updates</h3>
<ul class="footer_follow_nav">
<li><a href="http://twitter.com/W3C" title="Follow W3C on Twitter"><img src="/2008/site/images/Twitter_bird_logo_2012.svg" alt="Twitter" class="social-icon" height="40" /></a></li>
</ul>
</div>
<!-- #footer address / page signature -->
<p class="copyright">Copyright &#xA9; 2018 W3C <sup>&#xAE;</sup> (<a href="http://www.csail.mit.edu/"><abbr title="Massachusetts Institute of Technology">MIT</abbr></a>, <a href="http://www.ercim.eu/"><abbr title="European Research Consortium for Informatics and Mathematics">ERCIM</abbr></a>,
<a href="http://www.keio.ac.jp/">Keio</a>, <a href="http://ev.buaa.edu.cn/">Beihang</a>) <a href="/Consortium/Legal/ipr-notice">Usage policies apply</a>.</p>
</div>
</div>
<!-- /end #footer -->
<!-- Generated from data/scripts.php, Array{scripts.tpl} -->
<div id="w3c_scripts">
<script type="text/javascript" src="/2008/site/js/main">
</script></div>
</body>
</html>

In [12]:
from telnetlib import Telnet

connection = Telnet("www.w3.org",80)
connection.write(b"GET /Consortium/Member/Testimonial/Logo/29 HTTP/1.1\r\n")
connection.write(b"Host: www.w3.org\r\n")
connection.write(b"\r\n")
response = connection.read_all()
print(response.decode("utf-8"))
---------------------------------------------------------------------------
UnicodeDecodeError                        Traceback (most recent call last)
<ipython-input-12-9953e07bdfd4> in <module>()
      6 connection.write(b"\r\n")
      7 response = connection.read_all()
----> 8 print(response.decode("utf-8"))

UnicodeDecodeError: 'utf-8' codec can't decode byte 0x89 in position 374: invalid start byte
In [13]:
from telnetlib import Telnet

connection = Telnet("www.w3.org",80)
connection.write(b"HEAD /Consortium/Member/Testimonial/Logo/29 HTTP/1.1\r\n")
connection.write(b"Host: www.w3.org\r\n")
connection.write(b"\r\n")
response = connection.read_all()
print(response.decode("utf-8"))
HTTP/1.1 200 OK
Date: Wed, 21 Nov 2018 09:28:21 GMT
Content-Location: 29.png
Vary: negotiate,upgrade-insecure-requests
TCN: choice
Last-Modified: Mon, 26 Apr 2010 07:57:05 GMT
ETag: "519-4851f1f73b640;574a3f73d14e4"
Accept-Ranges: bytes
Content-Length: 1305
Cache-Control: max-age=2592000
Expires: Fri, 21 Dec 2018 09:28:21 GMT
Content-Type: image/png; qs=0.7


In [14]:
print(response)
b'HTTP/1.1 200 OK\r\nDate: Wed, 21 Nov 2018 09:28:21 GMT\r\nContent-Location: 29.png\r\nVary: negotiate,upgrade-insecure-requests\r\nTCN: choice\r\nLast-Modified: Mon, 26 Apr 2010 07:57:05 GMT\r\nETag: "519-4851f1f73b640;574a3f73d14e4"\r\nAccept-Ranges: bytes\r\nContent-Length: 1305\r\nCache-Control: max-age=2592000\r\nExpires: Fri, 21 Dec 2018 09:28:21 GMT\r\nContent-Type: image/png; qs=0.7\r\n\r\n'
In [15]:
from telnetlib import Telnet

connection = Telnet("www.w3.org",80)
connection.write(b"GET /Consortium/Member/Testimonial/Logo/29 HTTP/1.1\r\n")
connection.write(b"Host: www.w3.org\r\n")
connection.write(b"\r\n")
response = connection.read_all()
bild = response[response.find(b"\r\n\r\n")+4:]
In [16]:
print(bild)
b'\x89PNG\r\n\x1a\n\rIHDRx<\x08\x03\x9as\x8e\x9a\x04gAMA\xb1\x8f\x0b\xfca\x05\x03PLTE\xff\xff\xbf\xbf\x7f?\xab\x80\x0e{\x01\xc4IDATX\xc3\xedW\xcb\x92\xad \x0cL?\xfegD\xa0\x1c\xbdzG\xd8\x98\xaa\xb39&\xe9t\x80&D|\xf6\xd9gi$\xb9\x16\xb6mO\x87\xa6-R\xf3\x91\x99\x88\xb01\x17X\xac\xcc\xe7\xad.\x19Q;<\r\x18\xc3\x9e\x9a\x06l\xbb\xdbS\xb3\x80e%\xed\xd9k\\p6dN\xdb\xd5Vejq\xa2\x82l\x9d\xe5l\xe5R"[ g\x8a\xc7\xb8\xab\xa7"/\xc1\x8d\x88x\xa5\xc3\x14Y\x7f )\xaa\xa83)2D\x92D\xf1\xe9\xfd\xc5\x88\xa0l[\xaa\xb9RgE\x96L\xa7\xf7lZ\xc8\xae\na\xdb*\x0e\xcc\x03\xe5\xd2\xf9&b\x8fG\r\xd9\xce\x9f\xaf\xd7P\xf9\x0b\xec\x91\xc1L\x16%C~\xa2-\xab\xc60\xb1H\xca\xc8\x10\xeeyuu`\xb6\xca\x94\xf57\x1f\x1a\xe0\xcc\xa4M\xc0\x1c!\xa8B{\xad\xd1\x84\x9d2\xee\x1a\x7f\xcex(\xb6\xe7\xf5\x94q\\3\x1eb\x06}\x91\xf1\x01\xf0\x12\xc6\xe8y\xbd\xc2\xf8\x10x\xd0\xb5\xdb\x8c\xeb\xcds\xc1\x98\r\xc0\xd1\xb8}\x9bq\x07|g\x8d\x8bPx\x9f\x13\xee1\x06A\x88\xf7\xd7\xb8\xa9\\\xcf\xd7\x18O\x18W\xb1\xb6g\xee\xeaa\x06\x9ew\x8e\xfb-:\x9fq\xf1\xc2s\xc6\xf1\x18\x988\x86\xfb8.\xce1\x86\xc0\xfe>\xe6\r\xc6\xfb\xfd\xad-\xc9\xa9V\xb7}\xf9o\x9d\x1e\xdb\xd6\x0e\x13\x1e\x99\x1fi5\xa0\x9b\xeaLd\xfd\x8c\x1b\x8c\xbb\xd9\xa6s\xe0\xb0\n8\xf4F\'\x84\x97R\xad~\xfc\xeb\x033)\xbc;\xca\x15ySLu\x17\x85\xfd\xf0\x8dE\x10\xbf\xb6d\x9c\x16A`|\xca@|\xbdM^|J,yF\xacz\xc1ha\xa7\xb1\x88\xf0\x12\\\xaez\xa1.\x82\xfd\xec\xb3\xcf\xce\xed\x070a\x10I\\\xb1\xa4\x0eIEND\xaeB`\x82'
In [18]:
with open("bild.png","wb") as f:
    f.write(bild)
In [19]:
from telnetlib import Telnet

connection = Telnet("www.w3.org",80)
connection.write(b"GET /Consortium/Member/Testimonial/Logo/29 HTTP/1.1\r\n")
connection.write(b"Host: www.w3.org\r\n")
connection.write(b"\r\n")
socketfiledescriptor = connection.get_socket()
response = socketfiledescriptor.recv(3000)
bild = response[response.find(b"\r\n\r\n")+4:]
print(bild)
b'\x89PNG\r\n\x1a\n\x00\x00\x00\rIHDR\x00\x00\x00x\x00\x00\x00<\x08\x03\x00\x00\x00\x9as\x8e\x9a\x00\x00\x00\x04gAMA\x00\x00\xb1\x8f\x0b\xfca\x05\x00\x00\x03\x00PLTE\xff\xff\xff\xff\xbf\xbf\xff\x7f\x7f\xff??\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xab\x80\x0e{\x00\x00\x01\xc4IDATX\xc3\xedW\xcb\x92\xad \x0cL?\xfe\xff\x9bg\x11D\xa0\x1c\xbdzG\xd8\x98\xaa\xb39&\xe9t\x80&D|\xf6\xd9gi$\xb9\x00\x16\xb6mO\x87\xa6-R\xf3\x91\x99\x88\xb01\x17X\xac\xcc\xe7\xad.\x19Q;<\r\x18\xc3\x9e\x9a\x06l\xbb\xdbS\xb3\x80e%\xed\xd9k\\p6dN\xdb\xd5Vejq\xa2\x82l\x9d\xe5l\xe5R"[\x11 g\x8a\xc7\xb8\xab\xa7"/\xc1\x8d\x88x\xa5\xc3\x14Y\x7f )\xaa\xa83)2D\x92D\xf1\xe9\xfd\xc5\x88\xa0l[\xaa\xb9RgE\x96L\xa7\xf7lZ\xc8\xae\na\xdb*\x0e\xcc\x03\xe5\xd2\xf9&b\x8fG\r\xd9\xce\x9f\xaf\xd7P\xf9\x0b\xec\x91\xc1L\x16%C~\xa2-\xab\xc60\xb1H\xca\xc8\x10\xeeyuu`\xb6\xca\x94\xf57\x1f\x1a\xe0\xcc\xa4M\xc0\x1c\x11!\xa8B\x11{\xad\xd1\x84\x9d2\xee\x1a\x7f\xcex(\xb6\xe7\xf5\x94q\\3\x1eb\x06\x11}\x91\xf1\x01\xf0\x12\xc6\xe8y\xbd\xc2\xf8\x10x\xd0\xb5\xdb\x8c\xeb\xcds\xc1\x98\r\xc0\xd1\xb8}\x9bq\x07|g\x8d\x8bPx\x9f\x13\xee1\x06A\x88\xf7\xd7\xb8\xa9\\\xcf\xd7\x18O\x18W\xb1\xb6g\xee\xeaa\x06\x9ew\x8e\xfb-:\x9fq\xf1\xc2s\xc6\xf1\x18\x98\xff\xc78\x86\xfb8.\xce1\x86\xc0\xfe>\xe6\r\xc6\xfb\xfd\xad-\xc9\xa9V\xb7\xff(}\xf9o\x9d\x1e\xdb\xd6\x0e\x13\x1e\x99\x1fi5\x11\xa0\x9b\xeaLd\xfd\x8c\x1b\x8c\xbb\xd9\xa6s\xe0\xb0\n8\xf4F\'\x84\x97R\xad~\xfc\xeb\x033)\xbc;\xca\x15ySLu\x17\x85\xfd\xf0\x8dE\x10\xbf\xb6d\x9c\x16A`|\xca\xff\xc9@|\xbdM^|J,yF\xacz\xc1ha\xa7\xb1\x88\xf0\x12\\\xaez\xa1.\x82\xfd\xec\xb3\xcf\xce\xed\x070a\x10I\\\xb1\xa4\x0e\x00\x00\x00\x00IEND\xaeB`\x82'
In [20]:
with open("bild.png","wb") as f:
    f.write(bild)
In [21]:
from urllib.request import urlopen

with urlopen("http://www.w3.org/Consortium/Member/Testimonial/Logo/29") as f:
    bild = f.read()
with open("bild.png","wb") as f:
    f.write(bild)
In [33]:
from telnetlib import Telnet

connection = Telnet("smtp.hs-augsburg.de",25)

response = connection.read_until(b'\r\n')
print("\tS: {}".format(response.decode('utf-8')))
send = b"HELO meinRechner\r\n"
connection.write(send)
print("C: {}".format(send.decode('utf-8')))
	S: 220 fly1.rz.hs-augsburg.de ESMTP Postfix

C: HELO meinRechner

In [34]:
response = connection.read_until(b'\r\n')
print("\tS: {}".format(response.decode('utf-8')))
send = b"MAIL FROM: <test@test.de>\r\n"
connection.write(send)
print("C: {}".format(send.decode('utf-8')))
	S: 250 fly1.rz.hs-augsburg.de

C: MAIL FROM: <test@test.de>

In [35]:
response = connection.read_until(b'\r\n')
print("\tS: {}".format(response.decode('utf-8')))
send = b"RCPT TO: <nik.klever@hs-augsburg.de>\r\n"
connection.write(send)
print("C: {}".format(send.decode('utf-8')))
	S: 250 2.1.0 Ok

C: RCPT TO: <nik.klever@hs-augsburg.de>

In [36]:
response = connection.read_until(b'\r\n')
print("\tS: {}".format(response.decode('utf-8')))
send = b"DATA\r\n"
connection.write(send)
print("C: {}".format(send.decode('utf-8')))
	S: 250 2.1.5 Ok

C: DATA

In [37]:
response = connection.read_until(b'\r\n')
print("\tS: {}".format(response.decode('utf-8')))
send = b"""From: nk@test.de
To: wolfgang@beispiel.de
Message-Id: <0456798A824341.B856AF0056@test.de>
Content-Type: text/plain
Subject: Wiedersehen im Januar ?

Hallo Wolfgang,

klappt es mit unserem Wiedersehen im Januar ?

Nik"""
connection.write(send)
connection.write(b"\r\n.\r\n")
print("C: {}".format(send.decode('utf-8')))
	S: 354 End data with <CR><LF>.<CR><LF>

C: From: nk@test.de
To: wolfgang@beispiel.de
Message-Id: <0456798A824341.B856AF0056@test.de>
Content-Type: text/plain
Subject: Wiedersehen im Januar ?

Hallo Wolfgang,

klappt es mit unserem Wiedersehen im Januar ?

Nik
In [38]:
response = connection.read_until(b'\r\n')
print("\tS: {}".format(response.decode('utf-8')))
send = b"QUIT\r\n"
connection.write(send)
print("C: {}".format(send.decode('utf-8')))
	S: 250 2.0.0 Ok: queued as 0090C406E3

C: QUIT