一期Python爬虫群作业-Week2

作者: 只是不在意 | 来源:发表于2017-04-29 10:09 被阅读0次

    加入爬虫群已经第二周了,这周的作业是:

    1. 学习HTML
      http://www.w3school.com.cn/html/
    2. 学习正则表达式
      http://www.imooc.com/learn/550
    3. 试着爬一个网页
      http://www.jianshu.com/p/1c25e7f8cd74

    这周的作业虽然没有做的连滚带爬,但是也不轻松。因为学习内容有一个跃升。事实上到现在所以还不是很熟练。特别是正则表达式部分,绝对是一眼晕。
    后来还是看了《python核心编程》。这本书的第一章就是正则(!),内容有40页,所以讲的满透彻的(我能不能理解又是another story)。

    这周可能有点混,随便看看正则马上就到周四了,老师公布了爬虫作业。第一步是按照向右老师的代码敲。这步还算挺顺利的,主要遇到的坑是自己写路径,然后格式写错,写正确路径之后又遇到保护,换了个盘就好了。

    <u>urllib.urlretrieve(imgurl, ' G: /%s.jpg' % x)</u>

    第二步是试着自己爬花瓣网(因为图片比较美貌)。这个网址不是以jpg gif结尾。我又很直接的用了右键 查看源代码网页,所以。后来向右老师提醒我,才记得要用检查,才能看到正确的代码:

    如果用Chrome浏览器的右键-查看源代码功能,搜索 “<img ” 就只有一条结果,看代码好像是 gif 文件


    图片.png

    但是把鼠标移到图片上,右键选择检查,图片的链接就是介个了:


    图片.png

    所以,<img src="([.*\S ] *)"

    #coding = utf-8
    import re
    import urllib
    
    def getHtml(url):
        page = urllib.urlopen(url)
        html= page.read()
        return html
    
    html = getHtml('http://huaban.com/pins/1034928829/')
    
    reg= r'<img src="([.*\S]*)"'
    
    imgurls = re.findall(reg, html)
    
    x=1
    for imgurl in imgurls:
        print 'http:'+imgurl
        urllib.urlretrieve('http:'+imgurl, 'G://%s.jpg' % x)
    
        print "downloading %d"%x
        x +=1
    

    先运行的时候是报错的,还傻傻的不知道怎么回事,又跑去找大神看代码。向右老师加了个 'http:'+ 就行了,这就是内行外行的区别啊...
    老师语录:要注意检查url路径

    虽然作业都是抄的,但爬出来的感觉还是很酸爽的...


    图片.png

    这个代码同时也爬了头像,我后来手动删了。

    好吧,接下来是爬站酷网。重复的代码不写了,其实就是改了两条

    ......
    
    html =  getHtml('http://www.zcool.com.cn/work/ZMjE1NjY2MzY=.html')
    
    reg = r'src="([.*\S]*.jpg)"'
    
    ......
    
    

    只爬下自己看中的一张图,算是小ok吧。作者其余帖子的没爬下来。总是疑神疑鬼的觉得对方写了保护。
    总之不算很成功,初步了解而已,不过总是爬下来一个半网站,给自己六十分吧

    不关程序但小困扰的小白问题:
    运行框中中文显示不出来
    无法运行选中的一段程序
    哪天缓过气来,解决一下!

    相关文章

      网友评论

        本文标题:一期Python爬虫群作业-Week2

        本文链接:https://www.haomeiwen.com/subject/qmkzzttx.html