python3爬取全站美眉图片
爬取网站:https://www.169tp.com/xingganmeinv
该网站美眉图片有数百页,每页24张,共上万张图片,全部爬取下来
import urllib.request
import re
import os
from bs4 import BeautifulSoup page_flag = 0
base_url = "https://www.169tp.com/xingganmeinv/"
first_url ="https://www.169tp.com/xingganmeinv/list_1_1.html"
Imgnums = 0 def get_html(url):
response = urllib.request.urlopen(url)
html = response.read().decode('gb18030')
return html def get_Imgurl_list(html):
img_urllist = re.findall('src=["\']{1}(.+?\.jpg)["\']{1}', html)
return img_urllist def Download(img_urllist,page_flag,final_path,Imgnums):
num = 1
for imgurl in img_urllist:
imgname = "{}{}{}{}.jpg".format(final_path,page_flag,'_',num)
urllib.request.urlretrieve(imgurl,imgname)
print("已经爬取图片名:",imgname)
Imgnums += 1
num += 1 def makedir(path):
path = path.strip()
isExists = os.path.exists(path)
if not isExists:
print("创建了路径为 ",path," 的文件夹")
os.makedirs(path)
return True
else:
print("路径为 ",path," 的文件夹已经存在")
return False filepath = input("请输入保持图片的文件夹路径:")
print(filepath)
name = input("请输入保存图片的文件夹名:")
print(name)
finalpath = filepath + name
makedir(finalpath)
finalpath += '\\'
print(f"图片保存路径: {finalpath}") Download(get_Imgurl_list(first_url),page_flag,finalpath,Imgnums)
mysoup = BeautifulSoup(get_html(first_url),'html.parser')
next_page = mysoup.find('div',attrs = {'class':'page'}).find('li',text = '下一页').find('a')
while next_page:
new_url = base_url + next_page['href']
page_flag += 1
Download(get_Imgurl_list(get_html(new_url)),page_flag,finalpath,Imgnums)
mysoup = BeautifulSoup(get_html(new_url),'html.parser')
next_page = mysoup.find('div',attrs = {'class':'page'}).find('li',text = '下一页').find('a')
print(f"下载完成,共下载了 {Imgnums} 张图片!")
运行截图:

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

python3爬取全站美眉图片的更多相关文章
- Python爬取全站妹子图片,差点硬盘走火了!
在这严寒的冬日,为了点燃我们的热情,今天小编可是给大家带来了偷偷收藏了很久的好东西.大家要注意点哈,我第一次使用的时候,大意导致差点坏了大事哈! 1.所需库安装 2.网站分析 首先打开妹子图的官网(m ...
- Python3爬取美女妹子图片转载
# -*- coding: utf-8 -*- """ Created on Sun Dec 30 15:38:25 2018 @author: 球球 "&qu ...
- python3爬取动态网站图片
思路: 1.图片放在<image>XXX</image>标签中 2.利用fiddler抓包获取存放图片信息的js文件url 3.利用requests库获取html内容,然后获取 ...
- python3爬取1024图片
这两年python特别火,火到博客园现在也是隔三差五的出现一些python的文章.各种开源软件.各种爬虫算法纷纷开路,作为互联网行业的IT狗自然看的我也是心痒痒,于是趁着这个雾霾横行的周末瞅了两眼,作 ...
- python3爬取女神图片,破解盗链问题
title: python3爬取女神图片,破解盗链问题 date: 2018-04-22 08:26:00 tags: [python3,美女,图片抓取,爬虫, 盗链] comments: true ...
- 如何用python爬虫从爬取一章小说到爬取全站小说
前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取http ...
- python 爬虫入门----案例爬取上海租房图片
前言 对于一个net开发这爬虫真真的以前没有写过.这段时间学习python爬虫,今天周末无聊写了一段代码爬取上海租房图片,其实很简短就是利用爬虫的第三方库Requests与BeautifulSoup. ...
- Python3 爬取微信好友基本信息,并进行数据清洗
Python3 爬取微信好友基本信息,并进行数据清洗 1,登录获取好友基础信息: 好友的获取方法为get_friends,将会返回完整的好友列表. 其中每个好友为一个字典 列表的第一项为本人的账号信息 ...
- 使用Python爬虫爬取网络美女图片
代码地址如下:http://www.demodashi.com/demo/13500.html 准备工作 安装python3.6 略 安装requests库(用于请求静态页面) pip install ...
随机推荐
- (转) AJAX POST&跨域 解决方案 - CORS
跨域是我在日常面试中经常会问到的问题,这词在前端界出现的频率不低,主要原因还是由于安全限制(同源策略, 即JavaScript或Cookie只能访问同域下的内容),因为我们在日常的项目开发时会不可避免 ...
- <Android 基础(二十)> CoordinatorLayout Behavior
介绍 Interaction behavior plugin for child views of {@link CoordinatorLayout}. A Behavior implements o ...
- MySQL数据库(5)----删除或更新已有行
有时候,会需要删除某些行,或者修改其内容.这是候便需要用到DELETE语句和UPDATE语句. 1. DELETE 语句的基本格式如下所示: DELETE FROM tbl_name WHERE wh ...
- Windows 8 Metro风格颜色表-Metro colours
http://huaban.com/pins/538986818
- Android 查看和管理sqlite数据库
在Android中可以使用Eclipse插件DDMS来查看,也可以使用Android工具包中的adb工具来查看.android项目中的sqlite数据库位于/data/data/项目包/databas ...
- 利用Grahics 进行图片裁剪
这两天做了一个图片对比工具,里面要处理两张大的图片,所以要对图片先进行裁剪最开始用了 /// <summary> /// 裁剪图片 /// </summa ...
- CefSharp开发
CefSharp是用chromium内核开发的.net版本浏览器工具.目前只支持X86模式.所以在调试的时候要把平台改为X86 CefSharp开发指引:https://ourcodeworld.co ...
- 记一次使用MemoryCache不能Get的问题
在.NET Core自带的Angular模板项目中,我想要做一个简单的登录认证. 所以想填写用户名密码,使用guid作为key,存储登录信息,每次页面刷新的时候check它. 思路觉得没有问题,但是一 ...
- centOS 7 简单设置(虚拟机)
1.修改主机名 hostnamectl set-hostname 2.ssh连接慢的问题解决 vim /etc/ssh/sshd_config UseDNS=no GSSAPIAuthenticati ...
- 【Leetcode】【Hard】Reverse Nodes in k-Group
Given a linked list, reverse the nodes of a linked list k at a time and return its modified list. If ...