python爬虫二:网易博客的图片

举报
用户已注销 发表于 2021/11/19 04:32:42 2021/11/19
【摘要】 下面讲解我的爬虫程序: 在D:\wa中新建一个记事本文件1.txt,把所有的网易博客的链接(注意,是一篇博客的链接,不是目录页面的链接)都放进去,每个占一行,然后运行程序把每篇博客的图片全部下载下来,每篇博客都在D:\wa目录下新建一个目录,目录名为该篇博客的网页title。 代码: #coding=utf-8import r...

下面讲解我的爬虫程序:

在D:\wa中新建一个记事本文件1.txt,把所有的网易博客的链接(注意,是一篇博客的链接,不是目录页面的链接)都放进去,每个占一行,然后运行程序把每篇博客的图片全部下载下来,每篇博客都在D:\wa目录下新建一个目录,目录名为该篇博客的网页title。

代码:


      #coding=utf-8
      import re
      import urllib.request
      import os
      def get(url): #下载一个页面所有需要的图片
       if(len(url)<9): #忽略txt中的空行
       return
       all_title=[]
         try:
              html = urllib.request.urlopen(url).read().decode('gbk')
          except:
             print('error')
             print(url)
             return
          title = re.search("<title>.*</title>", html).group()
          title = title[7:-25] #########根据博客标题数出来的
         while(title in all_title):  #处理相同标题的网页
              title = title+'a'
          all_title.append(title)
          #pic_url = re.findall('http://img[0-9]*.ph.126.net/[0-9a-zA-Z-_=]*==/[0-9]*\.jpg',str(html))
          pic_url = re.findall('http://.{1,100}jpg',str(html))
          pic_url = list(set(pic_url))#去重
          path = thepath + '\\' + title
         try:
              os.mkdir(path)
          except:
             return
          i = 1
         for each in pic_url:
             try:
                  pic= urllib.request.urlopen(each,timeout=10).read()
              except:
                 continue
              file = path + '\\' + title + str(i) + '.jpg'
              fp = open(file,'w')
              fp.write(pic)
              fp.close()
              i=i+1
         if not os.listdir(path):
              os.removedirs(path)
             print('error')
             print(url)
      thepath = 'D:\\wa'
      fp = open(thepath + '\\' + '1.txt','r').readlines()
      for line in fp:
         if line == '\n':
             print('none')
             break
         get(line.strip('\n'))
  
 
get函数就是从1个url中下载所有图片

调用get函数时只需要读取1.txt即可



文章来源: blog.csdn.net,作者:csuzhucong,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/nameofcsdn/article/details/77351503

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。