0

我在 python 中编写了一个简单的 url 验证器和缩短器,如何从网站 url 保存小尺寸的图像?并认识到它不是像 .rar 或 .zip 这样的“文件”?如果您编辑我的代码以获得更好的性能,我很感激..

from urllib2 import Request, urlopen, URLError
from urlparse import urlparse
import string
import random

url = raw_input('plZ enter the url: ').lower()      #get input and convert to lowercase
while True:
    if url[0:7] == 'http://' or url[0:8] == 'https://' or url[0:6] =='ftp://':          #check the url protocol
        try:                                        #try to open url
            response = urlopen(url)
            parsed_url = urlparse(url)
            rand_url = ''.join(random.choice(string.ascii_uppercase + string.digits + string.ascii_lowercase) for x in range(6))
            print " The shortened url is: http://url.com/" + rand_url
            print "\n Original URL is: "+url
            exit()
        except URLError, e:                         #except the error by asking the address again
            if hasattr(e, 'reason'):
                print "URL is not valid or server is NOT responsive..plZ try again.."
                url = raw_input('plZ enter the url: ').lower()
            #print 'Reason: ', e.reason
            elif hasattr(e, 'code'):
                print 'The server couldn\'t fulfill the request.'       #message in case of server or connection error
                print 'Error code: ', e.code
    else:
        print "\n protocol missing, using HTTP instead.. \n"
        url = "http://"+url
4

1 回答 1

2

1) 如果您想抓取图像并调整大小,请考虑使用 PIL 或 PyImageMagik [优​​秀 ImageMagik 的 Python 绑定]

2)如果你想抓取页面的截图,那么很多人之前也有同样的问题。抓取屏幕截图调整大小后,您始终可以使用上面第 1) 点中提到的解决方案。Webkit2png 是实现相同功能的好工具。

http://www.paulhammond.org/webkit2png/

于 2012-08-16T12:25:28.073 回答