爬取网站:https://www.169tp.com/xingganmeinv

该网站美眉图片有数百页,每页24张,共上万张图片,全部爬取下来

  1. import urllib.request
  2. import re
  3. import os
  4. from bs4 import BeautifulSoup
  5.  
  6. page_flag = 0
  7. base_url = "https://www.169tp.com/xingganmeinv/"
  8. first_url ="https://www.169tp.com/xingganmeinv/list_1_1.html"
  9. Imgnums = 0
  10.  
  11. def get_html(url):
  12. response = urllib.request.urlopen(url)
  13. html = response.read().decode('gb18030')
  14. return html
  15.  
  16. def get_Imgurl_list(html):
  17. img_urllist = re.findall('src=["\']{1}(.+?\.jpg)["\']{1}', html)
  18. return img_urllist
  19.  
  20. def Download(img_urllist,page_flag,final_path,Imgnums):
  21. num = 1
  22. for imgurl in img_urllist:
  23. imgname = "{}{}{}{}.jpg".format(final_path,page_flag,'_',num)
  24. urllib.request.urlretrieve(imgurl,imgname)
  25. print("已经爬取图片名:",imgname)
  26. Imgnums += 1
  27. num += 1
  28.  
  29. def makedir(path):
  30. path = path.strip()
  31. isExists = os.path.exists(path)
  32. if not isExists:
  33. print("创建了路径为 ",path," 的文件夹")
  34. os.makedirs(path)
  35. return True
  36. else:
  37. print("路径为 ",path," 的文件夹已经存在")
  38. return False
  39.  
  40. filepath = input("请输入保持图片的文件夹路径:")
  41. print(filepath)
  42. name = input("请输入保存图片的文件夹名:")
  43. print(name)
  44. finalpath = filepath + name
  45. makedir(finalpath)
  46. finalpath += '\\'
  47. print(f"图片保存路径: {finalpath}")
  48.  
  49. Download(get_Imgurl_list(first_url),page_flag,finalpath,Imgnums)
  50. mysoup = BeautifulSoup(get_html(first_url),'html.parser')
  51. next_page = mysoup.find('div',attrs = {'class':'page'}).find('li',text = '下一页').find('a')
  52. while next_page:
  53. new_url = base_url + next_page['href']
  54. page_flag += 1
  55. Download(get_Imgurl_list(get_html(new_url)),page_flag,finalpath,Imgnums)
  56. mysoup = BeautifulSoup(get_html(new_url),'html.parser')
  57. next_page = mysoup.find('div',attrs = {'class':'page'}).find('li',text = '下一页').find('a')
  58. print(f"下载完成,共下载了 {Imgnums} 张图片!")

运行截图:

图片名命名规则:存储路径+页码+下划线+图片号+.jpg

图片文件夹截图:

python3爬取全站美眉图片的更多相关文章

  1. Python爬取全站妹子图片,差点硬盘走火了!

    在这严寒的冬日,为了点燃我们的热情,今天小编可是给大家带来了偷偷收藏了很久的好东西.大家要注意点哈,我第一次使用的时候,大意导致差点坏了大事哈! 1.所需库安装 2.网站分析 首先打开妹子图的官网(m ...

  2. Python3爬取美女妹子图片转载

    # -*- coding: utf-8 -*- """ Created on Sun Dec 30 15:38:25 2018 @author: 球球 "&qu ...

  3. python3爬取动态网站图片

    思路: 1.图片放在<image>XXX</image>标签中 2.利用fiddler抓包获取存放图片信息的js文件url 3.利用requests库获取html内容,然后获取 ...

  4. python3爬取1024图片

    这两年python特别火,火到博客园现在也是隔三差五的出现一些python的文章.各种开源软件.各种爬虫算法纷纷开路,作为互联网行业的IT狗自然看的我也是心痒痒,于是趁着这个雾霾横行的周末瞅了两眼,作 ...

  5. python3爬取女神图片,破解盗链问题

    title: python3爬取女神图片,破解盗链问题 date: 2018-04-22 08:26:00 tags: [python3,美女,图片抓取,爬虫, 盗链] comments: true ...

  6. 如何用python爬虫从爬取一章小说到爬取全站小说

    前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取http ...

  7. python 爬虫入门----案例爬取上海租房图片

    前言 对于一个net开发这爬虫真真的以前没有写过.这段时间学习python爬虫,今天周末无聊写了一段代码爬取上海租房图片,其实很简短就是利用爬虫的第三方库Requests与BeautifulSoup. ...

  8. Python3 爬取微信好友基本信息,并进行数据清洗

    Python3 爬取微信好友基本信息,并进行数据清洗 1,登录获取好友基础信息: 好友的获取方法为get_friends,将会返回完整的好友列表. 其中每个好友为一个字典 列表的第一项为本人的账号信息 ...

  9. 使用Python爬虫爬取网络美女图片

    代码地址如下:http://www.demodashi.com/demo/13500.html 准备工作 安装python3.6 略 安装requests库(用于请求静态页面) pip install ...

随机推荐

  1. git-中的命令与理解

    改变到要操作仓库的目录创建文件夹(mkdir 文件夹名) git init初始化一个git仓库 git add .git add --all两个命令一样作用,添加目录里面所有文件到本地工作区 git ...

  2. Intellij IDEA快捷键大全汇总

    Alt+回车 导入包,自动修正 Ctrl+N   查找类 Ctrl+Shift+N 查找文件 Ctrl+Alt+L  格式化代码 Ctrl+Alt+O 优化导入的类和包 Alt+Insert 生成代码 ...

  3. 【小记录】关于dojo中的on事件

    今天碰到一个现象,若是一个函数中存在一个on事件(例如点击事件),在该函数连续触发两次之后在去触发里面的on事件,会发现改时间所对应的函数被调用了两次,若父函数被连续触发N次后再取触发on事件,其对应 ...

  4. data-* 自定义数据属性 遇到的坑

    除非data-*自定义数据属性的值是固定不变的,否则最好不要把data-*作为查询条件. 例子: <div data-index="0">hello</div&g ...

  5. 如何判断单链表是否存在环 & 判断两链表是否相交

    给定一个单链表,只给出头指针h: 1.如何判断是否存在环? 2.如何知道环的长度? 3.如何找出环的连接点在哪里? 4.带环链表的长度是多少? 解法: 1.对于问题1,使用追赶的方法,设定两个指针sl ...

  6. POI 导出excel带小数点的数字格式显示不对解决方法

    最近看到了一个问题就是java导出excel中带小数点的数字显示不对, 比如我想在excel中第一行显示:  3,000.0 但是在excle中导出的格式总是不带小数点 3000(非文本格式),而且也 ...

  7. drag与drop事件

    为了支持网页上一些元素的拖动效果,可以使用drag和drog事件. 目前ie 5.0+, firefox 3.5+等都支持这些事件,ECMA Script第5版正式将其纳入标准. 对于被拖动的元素来说 ...

  8. 深入解读TPC-C指标

    深入解读TPC-C指标 TPC(Transactionprocessing Performance Council,事务处理性能委员会)是由数十家会员公司创建的非盈利组织,总部设在美国.TPC的成员主 ...

  9. RabbitMQ 启动

    1.使用Rabbit MQ 管理插件,可以更好的可视化方式查看Rabbit MQ 服务器实例的状态,你可以在命令行中使用下面的命令激活: C:\Program Files\RabbitMQ Serve ...

  10. iframe加载顺序导致数据访问出现问题

    背景: 一个页面A内有一个iframe,src指向了B页面. 问题: 页面A通过Ajax获取服务器数据,并赋值给了页面A的全局变量gData,页面B要用到页面A的数据gData.那么问题来了当B访问g ...