level9
地址:http://www.pythonchallenge.com/pc/return/good.html。
源码:git@code.aliyun.com:qianlizhixing12/PythonChallenge.git。
问题:使用PIL.Image对象show连接源码中first,second点。
#!/usr/bin/env python3
# -*- coding:UTF-8 -*-
# Level 9
import os
import urllib.request
url = "http://www.pythonchallenge.com/pc/return/good.html"
userinfo = {"realm":"inflate", "uri":url, "user":"huge", "passwd":"file"}
# create a password manager
password_mgr = urllib.request.HTTPPasswordMgrWithDefaultRealm()
# Add the username and password
password_mgr.add_password(**userinfo)
# create "opener" (OpenerDirector instance)
handler = urllib.request.HTTPBasicAuthHandler(password_mgr)
# create "opener" (OpenerDirector instance)
opener = urllib.request.build_opener(handler)
'''
方式一
# use the opener to fetch a URL
x = opener.open(url)
print(x.read())
'''
# 方式二Install the opener.all calls to urllib.request.urlopen use our opener.
urllib.request.install_opener(opener)
response = urllib.request.urlopen(url)
body = response.read().decode("utf8")
response.close
import re
stmp = re.findall("first:\n((?:.|\n)*)\n\nsecond:((?:.|\n)*)\n\n-->", body)
first, second = stmp[0][0].replace("\n", "").split(","), stmp[0][1].replace("\n", "").split(",")
first, second = list(map(int, first)), list(map(int, second))
import PIL.Image
import PIL.ImageDraw
img = PIL.Image.new("RGB", (640, 480))
draw = PIL.ImageDraw.Draw(img)
draw.line(first)
draw.line(second)
img.show()