基于Python爬取Bing图片
首先安装第三方网页解析库:
pip install bs4
pip install requests
pip install lxml
然后使用下面的脚本在bing搜索引擎中爬取关键词“戴帽子”对应的图片,本次共爬取2000张图片:
import os
import sys
import time
import urllib
import requests
import re
from bs4 import BeautifulSoup
import timeheader = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.102 UBrowser/6.1.2107.204 Safari/537.36'
}
url = "https://cn.bing.com/images/async?q={0}&first={1}&count={2}&scenario=ImageBasicHover&datsrc=N_I&layout=ColumnBased&mmasync=1&dgState=c*9_y*2226s2180s2072s2043s2292s2295s2079s2203s2094_i*71_w*198&IG=0D6AD6CBAF43430EA716510A4754C951&SFX={3}&iid=images.5599"def getImage(url, count):'''从原图url中将原图保存到本地'''try:time.sleep(0.5)urllib.request.urlretrieve(url, './imgs/hat' + str(count + 1) + '.jpg')except Exception as e:time.sleep(1)print("本张图片获取异常,跳过...")else:print("图片+1,成功保存 " + str(count + 1) + " 张图")def findImgUrlFromHtml(html, rule, url, key, first, loadNum, sfx, count):'''从缩略图列表页中找到原图的url,并返回这一页的图片数量'''soup = BeautifulSoup(html, "lxml")link_list = soup.find_all("a", class_="iusc")url = []for link in link_list:result = re.search(rule, str(link))#将字符串"amp;"删除url = result.group(0)#组装完整urlurl = url[8:len(url)]#打开高清图片网址getImage(url, count)count += 1#完成一页,继续加载下一页return countdef getStartHtml(url, key, first, loadNum, sfx):'''获取缩略图列表页'''page = urllib.request.Request(url.format(key, first, loadNum, sfx),headers=header)html = urllib.request.urlopen(page)return htmlif __name__ == '__main__':name = "戴帽子" #图片关键词path = './imgs/hat' #图片保存路径countNum = 2000 #爬取数量key = urllib.parse.quote(name)first = 1loadNum = 35sfx = 1count = 0rule = re.compile(r"\"murl\"\:\"http\S[^\"]+")if not os.path.exists(path):os.makedirs(path)while count < countNum:html = getStartHtml(url, key, first, loadNum, sfx)count = findImgUrlFromHtml(html, rule, url, key, first, loadNum, sfx,count)first = count + 1sfx += 1
爬取效果如下:
基于Python爬取Bing图片相关推荐
- Python爬取bing图片
我之前写过一篇Python爬取百度图片,有兴趣的朋友可以去读一下,这次写的是爬取Bing的图片. 打开Bing图片,搜索关键词,开始分析页面,可以发现bing和百度一样都是下滑自动加载,百度默认一次加 ...
- 【学习记录】基于python爬取Flickr图片及元数据
为复现师姐论文成果,爬取Flickr网站数据,只需爬取图片元数据,无需爬取图片: (一已成功,二失败了,这里记录给自己看.) 一.用Python的icrawler包 icrawler是一个轻型框架,自 ...
- 从入门到入土:基于Python爬取四川大学所有官方网站|狗头保命|
此博客仅用于记录个人学习进度,学识浅薄,若有错误观点欢迎评论区指出.欢迎各位前来交流.(部分材料来源网络,若有侵权,立即删除) 本人博客所有文章纯属学习之用,不涉及商业利益.不合适引用,自当删除! 若 ...
- 使用Python爬取网页图片
使用Python爬取网页图片 李晓文 21 天前 近一段时间在学习如何使用Python进行网络爬虫,越来越觉得Python在处理爬虫问题是非常便捷的,那么接下来我就陆陆续续的将自己学习的爬虫知识分享给 ...
- 基于python爬取有道翻译,并在线翻译
基于python爬取有道翻译,并在线翻译 由于我也是爬虫新学者,有什么做的不对的请多加包涵 我们需要使用的库如下 from urllib import request import urllib im ...
- python关于二手房的课程论文_基于python爬取链家二手房信息代码示例
基本环境配置 python 3.6 pycharm requests parsel time 相关模块pip安装即可 确定目标网页数据 哦豁,这个价格..................看到都觉得脑阔 ...
- 利用python爬取网页图片
学习python爬取网页图片的时候,可以通过这个工具去批量下载你想要的图片 开始正题: 我从尤物网去爬取我喜欢的女神的写真照,我们这里主要用到的就两个模块 re和urllib模块,有的时候可能会用到t ...
- python爬取美女图片的练习
python 爬取美女图片的练习 主要使用 xpath 定位获取 图片的链接 本次练习使用到os库 ,lmxl库 , requests库 import requests from lxml impor ...
- python爬取搜狗图片
python爬取搜狗图片 cond(`""" 对于动态加载的网站图片的获取,我们需要去分析js内容一定要让网页发生加载后去分析,分析network 里的XHR,可以看到需 ...
- Python爬取网站图片并保存,超级简单
Python爬取网站图片并保存,超级简单 先看看结果吧,去bilibili上拿到的图片=-= 第一步,导入模块 import requests from bs4 import BeautifulSou ...
最新文章
- linux下vim编辑器插件,linux vim编辑器插件的安装和设置方法
- win10兼容模式怎么设置_win10护眼模式关不掉怎么办
- 学习笔记之ByteBuffer使用和实现以及文件内存映射
- HTML5响应式吸塑包装定制塑胶制品类织梦模板
- C语言,利用const常量解决圆的体积和面积。
- linux内核获取cpu,如何在Linux上使用C获取CPU信息,例如内核数量?
- UE3 iPhonePackager 工具
- pos机改造迷你打印机_小票打印机如何自动弹出钱箱
- mysql关系数据库_关系型数据库MySql简介
- 数据结构与算法之链式栈
- MySQL数据库(10)----IN 和 NOT IN 子查询
- Grids for mac(强大的Instagram客户端工具)
- h5 video在微信中 全屏播放 退出后的坑
- office 2019 word鼠标点击反应慢要等一下
- 2013年上海市居住证新政策解读
- Windows xp开机时不显示用户名导致无法登录的错误处理方法
- Java小游戏项目之坦克世界
- 【分组后的统计及求和的SQL】
- linux磁盘文件格式转换,使用Fstransform在Linux下无损转换文件系统格式
- label标签 的使用与作用
热门文章
- 频登各大时装周运动品牌FILA在得物App首发和平精英联名系列
- ITextSharp获取pdf文件指定关键字的坐标信息,用于签名。
- 计算机无法打开注册表,电脑无法打开注册表怎么办
- Word2007版首页页眉如何去掉?
- 我对网页设计的一点见解!
- 快来领取哔哩哔哩412张超清壁纸!
- php utc gmt,时区缩写 UTC, CST, GMT, CEST 以及转换
- webp格式以及工具介绍
- php订阅号如何吸粉,公众号如何快速吸粉,一周内吸粉7000+的6个技巧
- html复制标签快捷键,ps复制快捷键ctrl加什么