python爬虫:获取网上图片

import re
import requests

def getHTMLText(url): # H获得url网页对应的html文本
    try:
        r = requests.get(url)
        return r.text
    except:
        return ""

html = getHTMLText("https://image.baidu.com/search/index?tn=baiduimage&ipn=r&ct=201326592&cl=2&lm=-1&st=-1&fm=index&fr=&hs=0&xthttps=111111&sf=1&fmq=&pv=&ic=0&nc=1&z=&se=1&showtab=0&fb=0&width=&height=&face=0&istype=2&ie=utf8&word=猫")
 # 换掉“猫”这个字,就能获得其他搜索结果

pt = '\"objURL\":\"((http://|https://)[^\"]*)\"'
# 正则表达式,用于寻找"objURL":"http://img.25pp.com/uploadfile/soft/images/2015/0225/20150225010456738.jpg"这样的图片地址

i = 0
for x in re.findall(pt,html):
    print(x[0])
    try:
        r = requests.get(x[0], stream=True) #二进制读,适用于url是一个文件
        pos = x[0].rfind(".")  # 处理后缀名
        f = open('c:\\tmp2\\{0}{1}'.format(i, x[0][pos:]), "wb") # 二进制,打开文件
        for chunk in r.iter_content(): #图片内容写入文件
            f.write(chunk)
        f.close()
    except:
        pass
    i = i+1
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值