zoukankan      html  css  js  c++  java
  • 5.14 个人作业2

    源代码:

    #unicoding=utf-8
    import re
    import urllib

    def gethtml(url):
    html=urllib.urlopen(url)
    page=html.read()
    return page
    def img(page):
    reg=r'src="(.+?jpg)" alt'
    imgre=re.compile(reg)
    imglist=re.findall(imgre,page)
    x=0
    for imgurl in imglist:
    urllib.urlretrieve(imgurl,'%s.jpg' % x)
    x+=1
    #page=gethtml("http://www.51tietu.net/tp/")
    page=gethtml("http://mm.51tietu.net/qingchun/90/")
    img(page)

    这样执行的话,会出现IOError 大致意思时文件操作时,出现错误

    在这里可以看到IOError后跟着你抓取到的jip文件的路径,但是这个路径不是整个url的路径,所以才会在urlretrieve调用imgurl的时候报错。

    去网站查看整个URL

    因此可以根据图中的url进行修改代码,      想法:可以在urlretrieve中把url补完整,之后代码如下

    #unicoding=utf-8
    import re
    import urllib

    def gethtml(url):
    html=urllib.urlopen(url)
    page=html.read()
    return page
    def img(page):
    reg=r'src="(.+?jpg)" alt'
    imgre=re.compile(reg)
    imglist=re.findall(imgre,page)
    x=0
    for imgurl in imglist:
    urllib.urlretrieve('http://mm.51tietu.net'+imgurl,'%s.jpg' % x)
    x+=1
    #page=gethtml("http://www.51tietu.net/tp/")
    page=gethtml("http://mm.51tietu.net/qingchun/90/")
    img(page)

  • 相关阅读:
    ubuntu播放器
    第一次装ubuntu 没root密码时
    web服务器记录
    socket udp编程步骤
    nfs服务器配置
    带线程函数编译条件
    linux使用一个刚编译驱动方法
    tiny6410_led驱动Makefile
    java-设计模式-外观模式
    java-实现一个简单的java Web容器
  • 原文地址:https://www.cnblogs.com/dty602511/p/14914531.html
Copyright © 2011-2022 走看看