爬虫1--爬取图像

简介:个人爬虫学习分享,如有错误,欢迎批评指正。

爬虫小案例1:爬取网页图

打开浏览器,搜索任意网络图像,如下红圈图像,

单击图像,后再点击鼠标右键,选复制图像链接,该链接就是这个图像的url地址。

运行如下代码,将上面复制的图像链接(url)代替下面代码中url='  '的那串字符串,即可爬下该图像,不同图像如上一样,更换url地址即可。

import requests
# 网络图像的URL地址
url = 'https://ts1.cn.mm.bing.net/th/id/R-C.66d7b796377883a92aad65b283ef1f84?rik=sQ%2fKoYAcr%2bOwsw&riu=http%3a%2f%2fwww.quazero.com%2fuploads%2fallimg%2f140305%2f1-140305131415.jpg&ehk=Hxl%2fQ9pbEiuuybrGWTEPJOhvrFK9C3vyCcWicooXfNE%3d&risl=&pid=ImgRaw&r=0'
# 加载图像
data = requests.get(url).content
print(data)
# 保存图像为JPG格式
with open('1.jpg','wb') as f :
    f.write(data)

爬虫小案例2:爬取百度贴吧图像

首先进入我们的目标网页:“https://tieba.baidu.com/p/5475267611”。

因为贴吧里面不只有图像本身,还有一些其他内容,因此爬取会复杂些许。首先点击鼠标右键,选择最后一项检查

点击检查后得到如上图像,点击图中1后可以选择一个元素开始检查,简而言之,就是你把鼠标放在网页的那个位置,下面源代码也定位到相应的位置。因此,当我把鼠标放在图中2时,即我们的目标图像,下面的源代码也定位到了该图像所在位置,其中4就是目标图像的url地址,3是我们需要用到的定位关键词。具体任务如下,首先通过网页url获取到网页数据,再通过lxml对源代码数据进行解析,通过定位关键词找到目标图像的url,再通过迭代每一个图像的url将每一个图像数据取出来,单独保存为jpg格式。完整代码如下:

"""百度贴吧图像下载"""
import requests
from lxml import etree

index_url = 'https://tieba.baidu.com/p/5475267611'
# 通过requests拿到网页的源代码数据
response = requests.get(index_url).text
# 通过lxml对源代码数据进行解析,拿到图片的url地址
selector = etree.HTML(response)
image_urls = selector.xpath('//img[@class="BDE_Image"]/@src')
# 其中'//img[@class="BDE_Image"]/@src'是我们通过网页源代码找到的定位关键词
offset = 0
# 依次对图像地址发送网络请求
for image_url in image_urls:
    # print(image_url)
    image_content = requests.get(image_url).content
    # 把图像的原始内容写入图像文件
    with open('{}.jpg'.format(offset), 'wb') as f:
        f.write(image_content)
    offset = offset + 1

结~~~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值