zoukankan      html  css  js  c++  java
  • 《批量下载图片》 re正则表达式,requests网页请求返回,os文件夹操作

    import re,requests,os

    #头部模拟
    header={'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36'}
    #计数
    n=1
    #写入
    def down(iters):
    global n
    #创建文件夹
    if not os.path.exists('img'):
    os.mkdir('img')
    #便利列表字典
    for m in iters:
    url=m.group(1)
    print(url)
    #出错跳过
    try:
    filename=url.split('/')[-1]
    print('正在下载第{0}个文件'.format(n))
    respomse=requests.get(url,headers=header)
    if not os.path.exists('img'):
    os.mkdir('img')
    with open(os.path.join('img',filename),mode='wb') as file:
    file.write(respomse.content)
    print('第{0}个文件下载成功'.format(n))
    n=n+1
    except:
    pass
    print('任务完成,共下载{0}个文件'.format(n-1))

    #请求图片链接
    def xizai():
    word=input('输入搜索关键词:')
    urld='https://image.baidu.com/search/index?tn=baiduimage&word='+word
    response=requests.get(urld,headers=header)
    #定义编码格式
    response.encoding=response.apparent_encoding
    #正则表达式
    iters=re.finditer(r'"objURL":"(.*?)"',response.text)
    print(iters)
    return iters
    #程序入口
    if __name__ == '__main__':
    aa=xizai()
    down(aa)

  • 相关阅读:
    js编码中常用的知识点
    oracle函数的使用
    oracle 临时表的使用
    oracle11G归档日志管理
    oracle中 高水位线详解
    oracle并行模式(Parallel)
    oracle常用函数详解(详细)
    oracle系统表的查询
    15000 字的 SQL 语句大全
    oracle_单引号问题和execute immediate 赋值问题
  • 原文地址:https://www.cnblogs.com/huazhou695/p/9872873.html
Copyright © 2011-2022 走看看