直接运行即可,效果图: 下载网站前100页图片,2000张壁纸差不多够用了 代码如下 #! /usr/bin/env python # -*- coding: utf-8 -*- # 爬取图片 import requests,os from pyquery import PyQuery '(KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36' } # 这里我使用了代理 你可以去掉这个代理IP 我是为了后面大规模爬取做准备的 # 这个网站页面使用的是GBK编码 这里进行编码转换 r.encoding = 'GBK' html = r.text return html # 解析网页 获取图片 def main(): url = "http://www.netbian.com" text = start_request(url) parse(text,1) #爬取指定范围页面
python爬虫爬图片 爬虫爬校花网校花的图片 第一步 载入爬虫模块 #载入爬虫模块 import re #载入爬虫模块 import requests #获得校花网的地址,图片的链接 import re #载入爬虫模块 import requests #载入爬虫模块 response dd = dd.content #图片信息装换成机械语言 with open(f'D:\图片\{name}','wb') as fw: #创建文件的路径 , 写入保存 import re #模块 import requests #模块 num = 0 #为了记录爬的照片的次数 wb') as fw: fw.write(dd) fw.flush() num += 1 print(f'爬取
pass def huoquzuidaye (count): t = huoquyuanma() shuliang = t.xpath(‘//div[5]/ul/li[1]/a/@href’) #取得最新图集链接 div[@class=”weizhi”]/h1/text()’) #获取图集标题 tup = t.xpath(‘//div[@class=”tuji”]/p[3]/text()’) #获取图集内图片数量 pppp = tup[0].split(‘P’) #分割文本去掉数字后的”p“ mp = pppp[0].split(‘ ‘) #分割文本 获得图集内图片数量的数字 link 构造第二页以后的页面 piclist = huoquyuanma(ht).xpath(‘//div[@class=”content”]/img/@src’) #获取当前页面下所有的图片列表 本次采集一共采集到了{zongji}张图片!’)
都知道Python的语法很简单易上手,也很适合拿来做爬虫等等,这里就简单讲解一下爬虫入门——简单地爬取下载网站图片。 上面说了要注意的一点是,由于很多网站会禁止人们随意爬取数据,有反爬虫的技术,所以在选择要爬取的网站的时候,最好先通过这个方法获取网站源代码,然后 print 输出 html 变量看一下获取到的内容是否是正常的网页源代码 在这个方法中,我们设置了一个正则表达式,用来在网页源代码中找到图片的资源路径,这个正则表达式要根据不同的网站去具体设置,比如我爬取的这个网站,图片对应的源代码是这样的: image.png 因此我们设置的正则表达式就是 我们可以输出这个序列,可以看到大量图片资源路径组成的一个序列,如果没爬取到,就是个空序列了。 执行 现在,去执行一次代码就可以啦,mac本身是支持python的,不用配置环境,直接将代码放入一个 .py 文件中,使用终端进入其文件位置,敲入 python xxx.py 命令就可以啦。
写一个简单地爬取图片的代码吧,以便下次用的时候直接调用0.0 这里选择图库 中国作为抓取页面。 发现图片在一个div里然后嵌套li/a/img,然后data-original属性的值就是图片的url。 然后再用get请求图片的url。 用with open保存图片。 url,这个网站有很多页面,如果我们要爬取所有页面的图片就要知道所有页面的url 可以发现不同页面只有后面的&type=&Photo_page=不同,所以可以在一个循环里每次改变&type=&Photo_page x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36'} 记得在代码里加上time.sleep设置爬取频次
1 # -*- conding=utf-8 -*- 2 3 import requests 4 from bs4 import BeautifulSoup 5 import io 6 soup.find_all("span")[10].text 13 print(text) 14 title = soup.find("h2",class_='main-title').text 15 #获取图片的地址 = requests.get(herf,headers=headers) 21 beautiful = BeautifulSoup(html.text,'lxml') 22 #获取妹子的图片连接 # print(file_name) 30 31 f = open(str(i)+'.jpg','wb') # 名称 32 f.write(html.content) #写入图片
最常见爬取图片方法 对于图片爬取,最容易想到的是通过urllib库或者requests库实现。 File: ~/anaconda/lib/python3.6/urllib/request.py Type: function ''' 参数 finename 指定了保存本地路径(如果参数未指定 ,图片名称是以图片URL的SHA1值进行保存的。 如果某个图片下载失败,将会记录下错误信息,图片也不会出现在 files 组中。 ImagesPipeline 在一个爬虫里,你抓取一个项目,把其中图片的 URL 放入 images_urls 组内。 如果某个图片下载失败,将会记录下错误信息,图片也不会出现在 images 组中。 Scrapy 不仅可以下载图片,还可以生成指定大小的缩略图。
是必要的 利用url进行爬取 将爬取爬取到的信息进行整合 保存到本地 具体的步骤: 利用代理IP和requests.get()语句获取网页 BeautifulSoup()解析网页(BeautilfulSoup targets_url_1 = soup.find('figure') targets_url = soup.find_all('noscript') 完整代码: 这是一份爬取知乎图片的教程代码 with open('图库/{}.jpg'.format(picture),'wb') as f: f.write(req.content) #每爬取一张图片暂停一秒防止 知识点补充: 关于爬虫中的headers:在使用python爬虫爬取数据的时候,经常会遇到一些网站的反爬虫措施,一般就是针对于headers中的User-Agent,如果没有对headers进行设置,User-Agent 所以在我们需要爬取大量数据时,一个不断更换ip的机制是必不可少的,我代码中的IP.txt文件就是为这一机制准备的。
我们用的是urllib库,这个库是python自带的,我们直接就可以使用。 我们需要来了解一下基本原理,它可以通过图片地址将图片下载下来。 我们来找一张图片做实例看一下。 ? 查看图片的地址,把地址保存到imgurl中,然后调用方法把它下载下来,并保存到本地。 urllib.request imgurl = "https://gss2.bdstatic.com/-fo3dSag_xI4khGkpoWK1HF6hhy/baike/c0%3Dbaike150%2C5% 2C5%2C150%2C50/sign=47edfd1f6681800a7ae8815cd05c589f/d788d43f8794a4c2ebabe3bb04f41bd5ac6e3991.jpg" urllib.request.urlretrieve (imgurl, '考拉.jpg') # 下载图片,并保存到本地 运行后发现图片已经保存了。
用Python爬虫来爬写真网图片 1.我们先要知道Python爬虫的原理 基本的Python爬虫原理很简单,分为三步 获取网页源码 通过分析源码并通过代码来获取其中想要的内容 进行下载或其他操作 话不多说直接开干 先准备上我们的目标网页 放图片不给过审。。。 ) 具体原理大概就这样 接下来只用把每一页的图集都遍历一遍,并且用 urllib.request.urlretrieve(p_url, jpg_name) #下载 来下载 结果 一共获取到将近五万张图片 = BeautifulSoup(html, "html.parser") a_link = soup.find_all('p') # 所有a标签 for link in a_link: # 获取图片数量 num_url = re.sub("\D", "", url) # 替换非数字字符 print("女生编号:" + num_url) for link in range(p_num): # 循环图片次数遍
/usr/bin/python import re import urllib import urllib.request #python3中urlopen、urlritrieve都在request
以下程序对 该网址 内的手写体图片进行爬取!这个手写体是我在手机上通过《手迹造字》app 书写的,大概 6886 个字符,历时两年多,目前仍在修改中。 while n < 65510: #分段爬取,不然会超时!!! n+=1 print("\n 爬取完毕!共爬取",total,"张图片!") print("图片存放路径:"+path) print("作者博客:lruihao.cn") if __name__=="__main__": main(); 爬取过程及结果 文件夹左下角数目变化 但是爬取第 6042 张图片的时候,我打开了一下目标网页发现无法加载图片了,就想这应该也算是一次 Dos 攻击了吧!打开控制台果然停了,相当于访问了近两万次!唉,还是太暴力了!!
页面代码如下: 在下载过程中遇到了几个问题,就是有的页面会报403禁止访问等,应该是网站加了一些防止爬虫的手段,网上找了下加上header参数来模拟浏览器访问就解决了; 下载单个页面代码如下: 批量爬取 批量爬取有两个工作要做,第一for循环目标内的所有列表页,第二为了避免重复爬取,需要给每个页面建立唯一的文件夹,下次爬取的时候如果存在直接跳过。 最后在理一下所有的爬取步骤: 循环地址栏->找出图片页列表->图片页分析找出图片地址->为图片页建立唯一的文件夹->开始下载页面图片 完整的代码如下: 最后的爬取结果: 源代码地址:python-crawler 具体地址和源代码在一起 其它 关于python2和python3的争论,网站争论比较大python3不兼容pyhton2,很多第三方的类库暂时还没有支持python3等等,但是对于我们新手来说,肯定是往前看果断 还有几个问题没有解决,下载一段时间后会莫名其妙的断掉目前还么找到原因,后期看是否可以加上多线程来爬取可能会快一点,大家有什么更好的建议也可以提出来。
获取待爬取页面 今天继续爬取一个网站,http://www.27270.com/ent/meinvtupian/ 这个网站具备反爬,so我们下载的代码有些地方处理的也不是很到位,大家重点学习思路,有啥建议可以在评论的地方跟我说说 首先,创建一个 ImageList 类,这个类第一件事情,需要获取我们爬取页面的总页码数目 [python3爬虫入门] 这个步骤比较简单 获取网页源码 正则匹配末页元素 提取数字 import http_help __start.format(i) for i in range(1,page_count)] 批量把要爬取的所有链接都生成完毕。 分析上面爬取到的URL列表,捕获详情页 我们采用生产者和消费者模型,就是一个抓取链接图片,一个下载图片,采用多线程的方式进行操作,需要首先引入 import threading import time ,把他放在待下载的图片列表里面 imgs_lock.release() time.sleep(5)
,传入的参数是一页所有图片url集合 def download(list): for img in list: urls = img['src'] # 判断url 是否完整 if urls[0:5] == 'http:': img_url = urls else: img_url = 'http:' + urls filename = img_url.split('/')[-1] # 保存图片 with open(filename, ' wb') as f: # 直接过滤掉保存失败的图片,不终止程序 try: f.write(get_html(img_url (不过,煎蛋网对图片进行了加密,所以,以上代码并不能下载到太多的图片) 参考:https://www.jqhtml.com/13393.html
'i': 'h', 't': 'i', '3': 'j', 'h': 'k', 's': 'l', '4': 'm', 'g': 'n', '5' 'u', 'e': 'v', 'o': 'w', '8': '1', 'd': '2', 'n': '3', '9': '4', 'c': '5'
这段时间开始学习python爬虫,今天周末无聊写了一段代码爬取上海租房图片,其实很简短就是利用爬虫的第三方库Requests与BeautifulSoup。 python 版本:python3.6 ,IDE :pycharm。其实就几行代码,但希望没有开发基础的人也能一下子看明白,所以大神请绕行。 Beautiful Soup支持Python标准库中的HTML解析器,还支持一些第三方的解析器,如果我们不安装它,则 Python 会使用 Python默认的解析器,其中lxml 据说是相对而言比较强大的我下面的暗示是 python 标准库的。 案例:爬取上海租房图片 ? 只是实现功能,至于代码结果如下: ?
#tag_mkpath = "C:\\Users\\Administrator\\Desktop\\Python-learn\\Photos\\" + tag_dir_name break t=t+2 except: print "爬取 %s中图片链接失败!" ########################################### #判断当前循环执行后是否创建对应的文件夹,如果有则结束循环直接进行下一个tag标签页面的爬取 else: pass #渣渣代码不足为外人道也 except: print "爬取
:param title: 图片名称 :param src: 图片线上访问 :param path: 图片保存到的文件夹地址 ''' image_data = ########################") print("类型1:4K风景图片") print("类型2:4K美女图片") print("类型 3:4K游戏图片") print("类型4:4K动漫图片") print("类型5:4K影视图片") print("类型6:4K汽车图片") print("类型7:4K动物图片") print("类型8:4K人物图片") print("类型9:4K美食图片") print("类型10:4K宗教图片 ") print("类型11:4K背景图片") print("类型12:4K手机壁纸图片") print("类型13:最新图片") types
前言 本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理 如何使用python去实现一个爬虫? 模拟浏览器 请求并获取网站数据 在原始数据中提取我们想要的数据 数据筛选 将筛选完成的数据做保存 完成一个爬虫需要哪些工具 Python3.6 pycharm 专业版 目标网站 图片之家 https: 爬虫代码 导入工具 python 自带的标准库 import ssl 系统库 自动创建保存文件夹 import os 下载包 import urllib.request 网络库 第三方包 import