爬取动漫美女,手把手教你用Python网络爬虫获取动漫图片
本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理
以下文章来源于腾讯云 作者:砸漏
( 想要学习Python?Python学习交流群:1039649593,满足你的需求,资料都已经上传群文件流,可以自行下载!还有海量最新2020python学习资料。 )
引言
之前有些无聊(呆在家里实在玩的腻了),然后就去B站看了一些python爬虫视频,没有进行基础的理论学习,也就是直接开始实战,感觉跟背公式一样的进行爬虫,也算行吧,至少还能爬一些东西,hhh。我今天来分享一个我的爬虫代码。
正文
话不多说,直接上完整代码
ps:这个代码有些问题 每次我爬到fate的图片它就给我报错,我只好用个try来跳过了,如果有哪位大佬能帮我找出错误并给与纠正,我将不胜感激
import requests as r
import re
import os
import time
file_name = "动漫截图"
if not os.path.exists(file_name):os.mkdir(file_name)for p in range(1,34):print("--------------------正在爬取第{}页内容------------------".format(p))url = 'https://www.acgimage.com/shot/recommend?page={}'.format(p)headers = {"user-agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.162 Safari/537.36"}resp = r.get(url, headers=headers) html = resp.textimages = re.findall('data-original="(.*?)" ', html)names =re.findall('title="(.*?)"', html)#print(images)#print(names)dic = dict(zip(images, names))for image in images:time.sleep(1)print(image, dic[image])name = dic[image]#name = image.split('/')[-1]i = r.get(image, headers=headers).contenttry:with open(file_name + '/' + name + '.jpg' , 'wb') as f:f.write(i)except FileNotFoundError:continue
先导入要使用的库
import requests as r
import re
import os
import time
然后去分析要去爬的网址: https://www.acgimage.com/shot/recommend
下图是网址的内容:
好了 url已经确定
下面去寻找headers
找到user-agent 将其内容复制到headers中
第一步就完成了
下面是代码展示
url = 'https://www.acgimage.com/shot/recommend?page={}'.format(p)
headers = {"user-agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.162 Safari/537.36"}
然后检索要爬的图片内容
从上图就可以找到图片的位置:data-origina=后面的内容
以及图片的名字:title=后面的内容
然后用正则表达式re来检索就行了
images = re.findall('data-original="(.*?)" ', html)
names =re.findall('title="(.*?)"', html)
最后将其保存就好了
i = r.get(image, headers=headers).content
with open(file_name + '/' + name + '.jpg' , 'wb') as f:f.write(i)
还有就是一些细节了
比如换页
第一页网址:
https://www.acgimage.com/shot/recommend
第二页网址:https://www.acgimage.com/shot/recommend?page=2
然后将page后面的数字改动就可以跳到相应的页面
换页的问题也就解决了
or p in range(1,34):url = 'https://www.acgimage.com/shot/recommend?page={}'.format(p)
以及将爬到的图片放到自己建立的文件zh
使用了os库
file_name = "动漫截图"if not os.path.exists(file_name):os.mkdir(file_name)
以及为了不影响爬取的网站 使用了sleep函数
虽然爬取的速度慢了一些
但是这是应遵守的道德
time.sleep(1)
以上 这就是我的爬虫过程
还是希望大佬能解决我的错误之处
万分感谢
爬取动漫美女,手把手教你用Python网络爬虫获取动漫图片相关推荐
- 手把手教你使用Python网络爬虫获取B站视频选集内容(附源码)
点击上方"Python爬虫与数据挖掘",进行关注 回复"书籍"即可获赠Python从入门到进阶共10本电子书 今 日 鸡 汤 位卑未敢忘忧国,事定犹须待阖棺. ...
- python爬虫可以爬取个人信息吗_手把手教你利用Python网络爬虫获取旅游景点信息...
爬虫系列: 当我们出去旅游时,会看这个地方有哪些旅游景点,景点价格.开放时间.用户的评论等. 本文基于Python网络爬虫技术,以hao123旅游网为例,获取旅游景点信息. 1.项目目标 获取网站的景 ...
- 手把手教你用Python网络爬虫获取壁纸图片
点击上方"Python爬虫与数据挖掘",进行关注 回复"书籍"即可获赠Python从入门到进阶共10本电子书 今 日 鸡 汤 桃之夭夭,灼灼其华. /1 前言/ ...
- 手把手教你利用Python网络爬虫获取链家网的房产信息
点击上方"Python爬虫与数据挖掘",进行关注 回复"书籍"即可获赠Python从入门到进阶共10本电子书 今 日 鸡 汤 夜阑卧听风吹雨,铁马冰河入梦来. ...
- 手把手教你使用Python网络爬虫获取王者荣耀英雄皮肤
点击上方"Python爬虫与数据挖掘",进行关注 回复"书籍"即可获赠Python从入门到进阶共10本电子书 今 日 鸡 汤 欢度国庆,共度中秋. /1 前言/ ...
- 实战|手把手教你利用Python网络爬虫获取新房数据
一.项目背景 大家好,我是J哥. 新房数据,对于房地产置业者来说是买房的重要参考依据,对于房地产开发商来说,也是分析竞争对手项目的绝佳途径,对于房地产代理来说,是踩盘前的重要准备. 今天J哥以惠民之家 ...
- 手把手教你使用Python网络爬虫获取音效信息
点击上方"Python爬虫与数据挖掘",进行关注 回复"书籍"即可获赠Python从入门到进阶共10本电子书 今 日 鸡 汤 一腔热血勤珍重,洒去犹能化碧涛. ...
- 手把手教你使用Python网络爬虫获取菜谱信息
/1 前言/ 在放假时 ,经常想尝试一下自己做饭,下厨房这个网址是个不错的选择. 下厨房是必选的网址之一,主要提供各种美食做法以及烹饪技巧.包含种类很多. 今天教大家去爬取下厨房的菜谱 ,保存在wor ...
- python链家网爬虫_手把手教你利用Python网络爬虫获取链家网的房产信息
点击上方" Python爬虫与数据挖掘 ",进行关注 回复"书籍"即可获赠Python从入门到进阶共10本电子书 今 日 鸡 汤 夜阑卧听风吹雨,铁马冰河入梦来 ...
最新文章
- 使用sae定时执行Python脚本
- dell raid配置
- 【Java】不需要正则表达式,提取字符串中的所有汉字、数字、字母
- java下拉树_参数模板中下拉树级联下拉数据集查询
- 7-5 抓老鼠啊~亏了还是赚了? (20 分)
- @Resource和@Autowired小笔记
- 深度技术 GHOSTXPSP3 快速装机 2013圣诞节专版
- 日本将推出“隐形列车”,你要去体验一番吗?
- 计算机六年级基础知识,《计算机基础知识》单元检测考试题六年级信息技术考试卷与考试题...
- mysql修改表只读属性_VF设置的疑问
- ggplot2绘制地图
- Proteus仿真——用两片74HC148及少量逻辑门构成16线--4线优先级编译器
- 星星之火-55:什么是微观量子?什么是量子的六大特征?什么是微观量子通信?
- 脱靶量与实际角度差计算
- 人工神经元算法视频教学,人工智能神经网络算法
- Fatal message conversion error;message rejected;it will be dropped or routed to a dead letter exchan
- lineage-14.1-20190402-UNOFFICIAL-le_x620.zip
- AAAI 2022 | 改进YOLOv3!IA-YOLO:恶劣天气下的目标检测
- Base64编解码原理并用Java手工实现Base64编解码
- Customizing the Banner
热门文章
- Blender 3.2自由定制做体积云絮形状(cloud制作)
- 中国常见空气质量数据标准汇总
- matlab谐波含量,基于谐波检测中的数字低通滤波器的MATLAB设计
- matlab 谐波电压含有量,电流平均值谐波检测方法MATLAB仿真
- 方向gravity_两种对齐方式,layout_gravity和gravity大不同
- judgement_mna_2016(32位fmt)
- 基于Flink百亿数据实时去重
- c语言用指针分离字符串数字与字符,c语言实验报告,指针的应用分别输出字符串中的数字和其他字符(共10篇).docx...
- linux mkdir命令用法,linux里面的mkdir命令
- Eclipse中导入外部jar包——添加lib