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)

  • 相关阅读:
    vue 拖拽移动(类似于iPhone虚拟home )
    鼠标事件-MouseEvent【转】
    JS快速排序 希尔排序 归并排序 选择排序
    JS 继承
    Centos6 iptables 防火墙设置【转】
    centos6 mongodb 安装
    操作系统中涉及的各种调度算法
    循环队列
    队列
    栈(C++)
  • 原文地址:https://www.cnblogs.com/dty602511/p/14914531.html
Copyright © 2011-2022 走看看