一个实现批量抓取淘女郎写真图片的爬虫

简介:

淘女郎,也被很多人称作“网络模特”,就是专门给淘宝、天猫等线上商家拍摄图片的平面模特。

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=

我们将用Python3和Selenium Webdriver抓取每一个美眉的个人主页内的写真图片,把每一个美眉的写真图片按照文件夹保存到本地。

先说一下网页爬取的一般步骤:

1.查看目标网站页面的源代码,找到需要爬取的内容 
2.用正则或其他如xpath/bs4的工具获取爬取内容 
3.写出完整的python代码,实现爬取过程

查看网站源码,火狐浏览器右键-查看源代码即可获取

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=
代码编写的关键步骤:

①需要用到的模块

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=
②解析目标网页的 Html 源码 bsObj = BeautifulSoup(driver.page_source, parser)

③用正则表达式获取美女图片
imagesUrl = re.findall('\/\/gtd\.alicdn\.com\/sns_logo.*\.jpg',driver.page_source)
④解析出个人主页地址等信息
girlsUrl = bsObj.find_all("a",{"href":re.compile("\/\/.*\.htm\?(userId=)\d*")})
⑤获取所有美女的图片url
girlsHURL = [('http:' + i['href']) for i in girlsUrl]
⑥判断路径文件夹是否创建,如果未创建则创建文件夹保存图片

 
def mkdir(path):

    # 判断路径是否存在

    isExists = os.path.exists(path)

    # 判断结果

    if not isExists:

        # 如果不存在则创建目录

        print("    [*]新建了文件夹", path)

        # 创建目录操作函数

        os.makedirs(path)

    else:

        # 如果目录存在则不创建,并提示目录已存在

        print('    [+]文件夹', path, '已创建')





 if __name__ == '__main__':

    if not os.path.exists(outputDir):

        os.makedirs(outputDir)

    main()

Python执行文件后抓取的效果如下图所示:

640?wx_fmt=jpeg&tp=webp&wxfrom=5&wx_lazy




原文发布时间为:2016-11-01
本文来自云栖社区合作伙伴“ Python中文社区”,了解相关信息可以关注“ Python中文社区”微信公众号
相关文章
|
19天前
|
数据采集 存储 C#
C# 爬虫技术:京东视频内容抓取的实战案例分析
C# 爬虫技术:京东视频内容抓取的实战案例分析
|
15天前
|
数据采集 存储 前端开发
Java爬虫开发:Jsoup库在图片URL提取中的实战应用
Java爬虫开发:Jsoup库在图片URL提取中的实战应用
|
16天前
|
数据采集 JavaScript 前端开发
构建简易Python爬虫:抓取网页数据入门指南
【8月更文挑战第31天】在数字信息的时代,数据抓取成为获取网络资源的重要手段。本文将引导你通过Python编写一个简单的网页爬虫,从零基础到实现数据抓取的全过程。我们将一起探索如何利用Python的requests库进行网络请求,使用BeautifulSoup库解析HTML文档,并最终提取出有价值的数据。无论你是编程新手还是有一定基础的开发者,这篇文章都将为你打开数据抓取的大门。
|
21天前
|
数据采集
爬虫抓取数据过程中代理IP频繁掉线:以Kookeey为例的解决方案
在数据抓取过程中,代理IP不可或缺,但其频繁掉线问题严重影响效率。本文以Kookeey为例,探讨解决之道:1)深入理解掉线原因,审慎选择稳定的服务商; 2)保持代理IP更新并合理配置使用参数; 3)在程序中集成错误处理与重试逻辑; 4)必要时升级至更优质的服务; 5)主动与服务商沟通寻求支持; 6)探索替代抓取策略,如调整抓取节奏或采用分布式架构。这些措施有助于显著提升抓取成功率及稳定性。
|
17天前
|
数据采集 JavaScript 前端开发
构建你的第一个Python爬虫:抓取网页数据入门指南
【8月更文挑战第31天】在数字时代,数据是新的石油。本文将引导初学者通过简单的步骤,使用Python编程语言创建一个基础的网络爬虫程序。我们将探索如何从网络上提取信息,并理解背后的原理。无论你是编程新手还是想要扩展你的技术工具箱,这篇文章都将为你提供一条清晰的道路,让你学会编写能够自动获取网络数据的脚本。准备好开始你的网络数据抓取之旅了吗?让我们现在就开始吧!
|
17天前
|
数据采集 JavaScript 前端开发
Python 爬虫实战:抓取和解析网页数据
【8月更文挑战第31天】本文将引导你通过Python编写一个简单的网络爬虫,从网页中抓取并解析数据。我们将使用requests库获取网页内容,然后利用BeautifulSoup进行解析。通过本教程,你不仅能够学习到如何自动化地从网站收集信息,还能理解数据处理的基本概念。无论你是编程新手还是希望扩展你的技术工具箱,这篇文章都将为你提供有价值的见解。
|
17天前
|
数据采集 存储 JavaScript
构建你的首个Python网络爬虫:抓取、解析与存储数据
【8月更文挑战第31天】在数字时代的浪潮中,数据成为了新的石油。了解如何从互联网的海洋中提取有价值的信息,是每个技术爱好者的必备技能。本文将引导你通过Python编程语言,利用其强大的库支持,一步步构建出你自己的网络爬虫。我们将探索网页请求、内容解析和数据存储等关键环节,并附上代码示例,让你轻松入门网络数据采集的世界。
|
2月前
|
数据采集 Web App开发 Java
Java爬虫安全策略:防止TikTok音频抓取过程中的请求被拦截
Java爬虫安全策略:防止TikTok音频抓取过程中的请求被拦截
|
3月前
|
数据采集 存储 编解码
技术笔记:Node.jsmm131图片批量下载爬虫1.01增加断点续传功能
技术笔记:Node.jsmm131图片批量下载爬虫1.01增加断点续传功能
26 0
|
3月前
|
数据采集 Web App开发 XML
详尽分享用Node.js写爬虫,撸羞羞的图片
详尽分享用Node.js写爬虫,撸羞羞的图片
26 0