美文网首页
爬妹子图坑记录

爬妹子图坑记录

作者: 豪哥的世界 | 来源:发表于2016-11-20 16:29 被阅读312次

    有个网站

    http://www.meizitu.com/

    里面有很多妹子,所以就动了心思,是不是可以爬到我的本地来。

    参考了 崔庆才的教程,改吧改吧之后,有了成功运行的程序。

    中间遇到的坑如下

    图片保存到本地

    本来可以按照一般方法搞定的

    u = urllib.urlopen(imageURL)
    data = u.read()
    f = open(fileName, 'wb')
    f.write(data)
    print u"正在悄悄保存她的一张图片为",fileName
    f.close()
    

    但是死活就是保存到本地变为24K的无效文件,经过用其他网站的网址单条命令调试和对比,发现是妹子图网站识别了你是机器人,所以,直接给你保存不了有效文件。

    后加上HTTP的Header,搞定。

    user_agent = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.99 Safari/537.36'
    headers = { 'User-Agent' : user_agent,'Cookie':'__jsluid=4e20473ab5ba881b9e653d82476753a2'}
    request = urllib2.Request(imageURL,None,headers)
    data = response.read()
    f = open(fileName, 'wb')
    f.write(data)
    print u"正在悄悄保存她的一张图片为",fileName
    f.close()
    

    其中一张图片如果在服务器没有资源,那么程序不再往下爬取。

    在以上加了HTTP的Header的代码中增加代码后,完整如下:

    user_agent = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.99 Safari/537.36'
    headers = { 'User-Agent' : user_agent,'Cookie':'__jsluid=4e20473ab5ba881b9e653d82476753a2'}
    request = urllib2.Request(imageURL,None,headers)
    try:
         response = urllib2.urlopen(request)
    except urllib2.HTTPError, e:
         print(e.code)
         return
    except urllib2.URLError, e:
         print(e.args)
        return
    data = response.read()
    f = open(fileName, 'wb')
    f.write(data)
    print u"正在悄悄保存她的一张图片为",fileName
    f.close()
    

    先记录着。

    相关文章

      网友评论

          本文标题:爬妹子图坑记录

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