精华内容
下载资源
问答
  • 之前的文章介绍了如何调用摄像头间隔拍照并保存图片(文章链接:Python+OpenCV调用摄像头固定间隔时间拍照并保存到本地同时应用YOLO中检测目标),这篇文章再介绍一下如何调用摄像头并保存视频。 读写视频流 获取...


    前言

    之前的文章介绍了如何调用摄像头间隔拍照并保存图片(文章链接:Python+OpenCV调用摄像头固定间隔时间拍照并保存到本地同时应用到YOLO中检测目标),这篇文章再介绍一下如何调用摄像头并保存视频。


    读写视频流

    获取摄像头:

    capture = cv2.VideoCapture(0)
    
    ref, frame = capture.read()
    

    前文介绍过,cv2.VideoCapture()获取摄像头,read()方法读入,返回的ref是是否读取成功的标志(True/False),frame是视频的每一帧

    写入视频:

    写入视频用VideoWriter()方法:参数如下:

    cv2.VideoWriter(路径, 保存视频文件格式, 视频帧速率, 视频分辨率)
    

    其中,第二个参数为视频编解码器,为四字符代码(Four-Character Codes)具体用法如下:

    cv2.VideoWriter_fourcc(‘I’, ‘4’, ‘2’, ‘0’),该参数是YUV编码类型,文件名后缀为.avi

    cv2.VideoWriter_fourcc(‘P’, ‘I’, ‘M’, ‘I’),该参数是MPEG-1编码类型,文件名后缀为.avi

    cv2.VideoWriter_fourcc(‘X’, ‘V’, ‘I’, ‘D’),该参数是MPEG-4编码类型,文件名后缀为.avi

    cv2.VideoWriter_fourcc(‘T’, ‘H’, ‘E’, ‘O’),该参数是Ogg Vorbis,文件名后缀为.ogv

    cv2.VideoWriter_fourcc(‘F’, ‘L’, ‘V’, ‘1’),该参数是Flash视频,文件名后缀为.flv

    或直接用cv2.VideoWriter_fourcc()来直接指定视频格式

    cv2.VideoWriter_fourcc(*'XVID')
    

    第四个参数为元组格式,如1920*1080的分辨率则传入(1920,1080)。需要注意的是:一定要设置成和你用的摄像头相同的分辨率,不然无法保存。笔者是win10,查看相机使用的分辨率如下图:
    在这里插入图片描述
    则设置成(640,480)


    完整的调用摄像头并保存视频代码

    import cv2
    
    capture = cv2.VideoCapture(0)
    fourcc = cv2.VideoWriter_fourcc(*'XVID')
    
    #目录,视频格式,帧速率,分辨率
    out = cv2.VideoWriter('D:/video/a.avi', fourcc, 20.0, (640, 480))
    
    #通过write方法读取到视频帧即可
    out.write(frame)
    
    cv2.imshow("video",frame)
    k = cv2.waitKey(1)
    
    if k == ord('q'):
    	break
    

    应用到YOLO中

    完整代码如下:根据自己需要选择保存的视频位置

    import time
    
    import cv2
    import numpy as np
    from PIL import Image
    
    from yolo import YOLO
    
    yolo = YOLO()
    
    capture = cv2.VideoCapture(0)
    
    #保存摄像头视频
    fourcc = cv2.VideoWriter_fourcc(*'XVID')
    out = cv2.VideoWriter('D:/video/a.avi', fourcc, 20.0, (640, 480))
    
    if capture.isOpened():
        ref, frame = capture.read()
    else:
        ref = False
    
    fps = 0.0
    timeF = 10
    c=1
    while ref:
        t1 = time.time()
        # 读取某一帧
        ref,frame=capture.read()
    
        # 此处显示保存的图片上无检测结果
        #if (c % timeF == 0):
        #    cv2.imwrite("D:/photo/" + str(c) + '.jpg', frame)
        #c += 1
    
        #保存视频,此处无检测结果
        #out.write(frame)
    
        # 格式转变,BGRtoRGB
        frame = cv2.cvtColor(frame,cv2.COLOR_BGR2RGB)
        # 转变成Imageq
        frame = Image.fromarray(np.uint8(frame))
        # 进行检测
        frame = np.array(yolo.detect_image(frame))
        # RGBtoBGR满足opencv显示格式
        frame = cv2.cvtColor(frame,cv2.COLOR_RGB2BGR)
    
        #此处显示保存的图片上有检测结果
        #if (c % timeF == 0):
        #    cv2.imwrite("D:/photo/" + str(c) + '.jpg', frame)
        #c += 1
    
        #保存的视频有检测结果
        #out.write(frame)
    
        fps  = ( fps + (1./(time.time()-t1)) ) / 2
        print("fps= %.2f"%(fps))
        frame = cv2.putText(frame, "fps= %.2f"%(fps), (0, 40), cv2.FONT_HERSHEY_SIMPLEX, 1, (0, 255, 0), 2)
    
        #此处保存的图片上有fps
        #if (c % timeF == 0):
        #    cv2.imwrite("D:/photo/" + str(c) + '.jpg', frame)
        #c += 1
    
        # 保存的视频有检测结果和fps
        out.write(frame)
    
        cv2.imshow("video",frame)
        k = cv2.waitKey(1)
    
        if k == ord('q'):
            break
    
    

    总结

    1. 根据设备修改帧播放速率,设备不同会影响最后保存的视频质量,有的可能会有卡顿。
    2. 如果是动态检测,无论是移动摄像头还是移动被检测物体,建议移动速率慢一点,这样能更好的保存完整视频,不至于丢帧。尤其是多目标的时候会有卡顿现象。
    展开全文
  • 文章目录前言获取摄像头固定间隔拍照并保存到本地应用YOLO中总结 前言 工业实时监测任务中,往往要获取摄像头,读取摄像头中的每一帧并检测。由于被检测物体放在传送带上,所以需要间隔一段时间拍照并检测,并且...


    前言

    工业实时监测任务中,往往要获取摄像头,读取摄像头中的每一帧并检测。由于被检测物体放在传送带上,所以需要间隔一段时间拍照并检测,并且需要保留检测结果或保留目标图像用于模型训练。本文将介绍如何用python+opencv获取摄像头并间隔某段时间拍照获取目标或检测结果同时保存在本地,并将其应用到YOLO中。


    获取摄像头

    import cv2
    
    capture = cv2.VideoCapture(0)
    

    其中参数0表示获取笔记本自带摄像头。当有多个摄像头可用时,1表示获取外接摄像头。若笔记本没有自带摄像头而有一个外接摄像头,则参数为0。(笔者的Y7000p就是这样。。。)

    capture = cv2.VideoCapture("1.mp4")
    

    也可以传入视频路径获取视频


    固定间隔拍照并保存到本地

    #判断摄像头是否可用
    #若可用,则获取视频返回值ref和每一帧返回值frame
    if capture.isOpened():
        ref, frame = capture.read()
    else:
        ref = False
        
    #间隔帧数
    timeF = 10
    
    c = 1
    while ref:
    	ref,frame=capture.read()
    	
    	#每隔timeF获取一张图片并保存到指定目录
    	#"D:/photo/"根据自己的目录修改
        if (c % timeF == 0):
            cv2.imwrite("D:/photo/" + str(c) + '.jpg', frame)
        c += 1
        
        #1毫秒刷新一次
        k = cv2.waitKey(1)
    
    	#按q退出
    	#if k==27:则为按ESC退出
        if k == ord('q'):
      		capture.release()
            break
        
    

    应用到YOLO中

    完整代码如下:修改YOLO中的video.py文件

    import time
    import cv2
    import numpy as np
    from PIL import Image
    
    from yolo import YOLO
    yolo = YOLO()
    
    
    capture = cv2.VideoCapture(0)
    #capture=cv2.VideoCapture("D:/1.mp4")
    
    if capture.isOpened():
        ref, frame = capture.read()
    else:
        ref = False
    
    fps = 0.0
    
    timeF = 10
    
    c=1
    while ref:
        t1 = time.time()
        # 读取某一帧
        ref,frame=capture.read()
    
        #此处保存图片无检测结果,用于采集训练数据和测试摄像头是否清晰稳定
        #if (c % timeF == 0):
        #    cv2.imwrite("D:/photo/" + str(c) + '.jpg', frame)
        #c += 1
    
        # 格式转变,BGRtoRGB
        frame = cv2.cvtColor(frame,cv2.COLOR_BGR2RGB)
        # 转变成Image
        frame = Image.fromarray(np.uint8(frame))
        # 进行检测
        frame = np.array(yolo.detect_image(frame))
        # RGBtoBGR满足opencv显示格式
        frame = cv2.cvtColor(frame,cv2.COLOR_RGB2BGR)
    
        #此处保存的图片有检测结果,用于保留检测结果
        if (c % timeF == 0):
            cv2.imwrite("D:/photo/" + str(c) + '.jpg', frame)
        c += 1
    
        fps  = ( fps + (1./(time.time()-t1)) ) / 2
        print("fps= %.2f"%(fps))
        frame = cv2.putText(frame, "fps= %.2f"%(fps), (0, 40), cv2.FONT_HERSHEY_SIMPLEX, 1, (0, 255, 0), 2)
    
        #此处保存的图片上既有检测结果,也有fps值,用于监测不同fps下的检测结果
        #if (c % timeF == 0):
        #    cv2.imwrite("D:/photo/" + str(c) + '.jpg', frame)
        #c += 1
        
        #显示摄像头
        cv2.imshow("video",frame)
        k = cv2.waitKey(1)
    
    	#按q退出
        if k == ord('q'):
        	capture.release()
            break
        
        #按ESC退出
        #k =cv2.waitKey(1)
        #if k==27:
        #    capture.release()
        #    break
    
    

    总结

    1. 一般动画是每秒24帧(也可根据摄像头的fps反算),工业上需要根据传送带的速度来计算。读者可自行改变timeF从而改变间隔时间。
    2. 不加cv2.waitKey()弹出的视频窗口会卡死。
    3. 与video.py在同一目录下的yolo.py文件中包含yolo类和detect_image检测图片方法。
    展开全文
  • java下载远程url文件保存到本地 使用URL下载远程文件保存到本地 一、需求说明 1、项目中使用一个第三方插件,因插件经常更新,人工一次次的替换,很麻烦。于是乎有了需求,使用代码实现后台自动下载更新。 2...

          java下载远程url文件保存到本地 使用URL下载远程文件保存到本地

     

    一、需求说明

    1、项目中使用到一个第三方插件,因插件经常更新,人工一次次的替换,很麻烦。于是乎有了需求,使用代码实现后台自动下载更新。

    2、因是java的服务端项目,这里使用JDK提供的 java.net.* 包的,URLHttpURLConnection 实现文件下载。

     

    二、代码如下

    1、使用url 下载远程文件

    /**
    	 * description: 使用url 下载远程文件
    	 * @param urlPath  --- url资源
    	 * @param targetDirectory --- 目标文件夹
    	 * @throws Exception
    	 * @return void
    	 * @version v1.0
    	 * @author w
    	 * @date 2019年9月3日 下午8:29:01
    	 */
    	public static void download(String urlPath , String targetDirectory) throws Exception {
    		// 解决url中可能有中文情况
    		System.out.println("url:"+ urlPath);
    		URL url = new URL(urlPath);
    		HttpURLConnection http = (HttpURLConnection)url.openConnection();
    		http.setConnectTimeout(3000);		
    		// 设置 User-Agent 避免被拦截 
    		http.setRequestProperty("User-Agent", "Mozilla/4.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)");
    		String contentType = http.getContentType();
    		System.out.println("contentType: "+ contentType);
    		// 获取文件大小 
    		long length = http.getContentLengthLong();
    		System.out.println("文件大小:"+(length / 1024)+"KB");
    		// 获取文件名
    		String fileName = getFileName(http , urlPath);
    		InputStream inputStream = http.getInputStream();
    		byte[] buff = new byte[1024*10];
    		OutputStream out = new FileOutputStream(new File(targetDirectory,fileName));
    		int len ;
    		int count = 0; // 计数
    		while((len = inputStream.read(buff)) != -1) {
    			out.write(buff, 0, len);
    			out.flush();
    			++count ;
    		}
    		System.out.println("count:"+ count);
    		// 关闭资源
    		out.close();
    		inputStream.close();
    		http.disconnect();
    	}

     

    2、获取文件名

    /**
    	 * description: 获取文件名 
    	 * @param http
    	 * @param urlPath
    	 * @throws UnsupportedEncodingException
    	 * @return String
    	 * @version v1.0
    	 * @author w
    	 * @date 2019年9月3日 下午8:25:55
    	 */
    	private static String getFileName(HttpURLConnection http , String urlPath) throws UnsupportedEncodingException {
    		String headerField = http.getHeaderField("Content-Disposition");
    		String fileName = null ;
    		if(null != headerField) {
    			String decode = URLDecoder.decode(headerField, "UTF-8");
    			fileName = decode.split(";")[1].split("=")[1].replaceAll("\"", "");
    			System.out.println("文件名是: "+ fileName);
    		}
    		if(null == fileName) {
    			// 尝试从url中获取文件名
    			String[] arr  = urlPath.split("/");
    			fileName = arr[arr.length - 1];
    			System.out.println("url中获取文件名:"+ fileName);
    		}
    		return fileName;
    	}

    3、测试

    public static void main(String[] args) {
    	Map<String,String> map = new HashMap<>();
    	map.put("下载图片", "http://i1.zhiaigou.com/uploads/tu/201908/9999/152a0cd3b5.jpg");
    	map.put("下载中文图片", "http://47.93.217.218/chapter/downloadServlet?fileName=%E4%B8%AD%E6%96%87%E5%9B%BE%E7%89%87.jpg");
    	map.put("下载QQ软件", "https://qd.myapp.com/myapp/qqteam/pcqq/PCQQ2019.exe");
    	map.put("下载带中文文件", "http://32204.xc.mieseng.com/xiaz/%E8%BF%85%E9%9B%B7%E5%A4%8D%E6%B4%BB%E7%89%88@68_416334.exe");
    map.put("该资源无法下载", "https://www.csc108.com/announcementNotice/showFile.json?id=685");
    	try {
    		for(String urlStr : map.values()) {
    			download(urlStr, "E:/");
    		}
    	} catch (Exception e) {
    		e.printStackTrace();
    	}
    		
    	System.out.println("process over ...");
    }

    4、效果如下:

     

    三、总结

    1、这里只是用简单的使用 HttpURLConnection 实现从远程服务端获取文件下载,若有更高级需求,比如 爬虫,可以考虑使用 jsoup 来实现。

    2、【二-2】中获取文件名,静态资源直接从url中获取,动态返回的文件流资源,需要从header中获取。 比如参考:https://blog.csdn.net/HaHa_Sir/article/details/79258556

    3、若服务端设置了禁用java等方式访问,该代码可能无效,回抛出异常: Server returned HTTP response code: 521 for URL: xxx . 该示例代码中没有解决这个问题!

     

     

    展开全文
  • Android 下载网络图片保存到本地

    万次阅读 2014-08-25 13:17:23
    Android 下载网络图片保存到本地

    通过网络地址获取网络图片,点击下载将图片显示出来,然后点击图片将图片保存到本地。

    首先需要在manifest上添加一些权限:
    <!-- 访问网络的权限 -->
    <uses-permission android:name="android.permission.INTERNET" />
    <!-- 文件读取的权限 -->
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
    <!-- 向SD卡中创建或者删除的权限。 -->
    <uses-permission android:name="andorid.permission.MONUN_UNMOUNT_FILESYSTEMS"/>
    package com.xjw.test;
    
    import java.io.File;
    import java.io.FileOutputStream;
    import java.io.InputStream;
    import java.net.HttpURLConnection;
    import java.net.URL;
    import android.os.AsyncTask;
    import android.os.Bundle;
    import android.os.Environment;
    import android.os.Handler;
    import android.os.Message;
    import android.app.Activity;
    import android.graphics.Bitmap;
    import android.graphics.BitmapFactory;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.Button;
    import android.widget.ImageView;
    import android.widget.Toast;
    
    public class MainActivity extends Activity implements OnClickListener{
    
    	Button content;
    	ImageView image;
    	Bitmap bitmap;
    	protected void onCreate(Bundle savedInstanceState) {
    		super.onCreate(savedInstanceState);
    		setContentView(R.layout.activity_main);
    		content=(Button)findViewById(R.id.content);
    		image=(ImageView)findViewById(R.id.image);
    		
    		content.setOnClickListener(this);;
    		image.setOnClickListener(this);;
    	}
    	
    	/**
    	 * 获取网络图片
    	 * @param imageurl 图片网络地址
    	 * @return Bitmap 返回位图
    	 */
    	public Bitmap GetImageInputStream(String imageurl){
    		URL url;
    		HttpURLConnection connection=null;
    		Bitmap bitmap=null;
    		try {
    			url = new URL(imageurl);
    			connection=(HttpURLConnection)url.openConnection();
    			connection.setConnectTimeout(6000); //超时设置
    			connection.setDoInput(true); 
    			connection.setUseCaches(false); //设置不使用缓存
    			InputStream inputStream=connection.getInputStream();
    			bitmap=BitmapFactory.decodeStream(inputStream);
    			inputStream.close();
    		} catch (Exception e) {
    			e.printStackTrace();
    		}
    		return bitmap;
    	}
    	
    	public void onClick(View v) {
    		switch (v.getId()) {
    		case R.id.content:
    			//加入网络图片地址
    			new Task().execute("http://pic.4j4j.cn/upload/pic/20130617/55695c3c95.jpg");
    			break;
    			
    		case R.id.image:
    			//点击图片后将图片保存到SD卡跟目录下的Test文件夹内
    			SavaImage(bitmap, Environment.getExternalStorageDirectory().getPath()+"/Test");
    			Toast.makeText(getBaseContext(), "图片保存", Toast.LENGTH_SHORT).show();
    			break;
    			
    		default:
    			break;
    		}
    	}
    	
    	Handler handler=new Handler(){
    		public void handleMessage(android.os.Message msg) {
    			if(msg.what==0x123){
    				image.setImageBitmap(bitmap);
    			}
    		};
    	};
    	
    	
    	/**
    	 * 异步线程下载图片
    	 *
    	 */
    	class Task extends AsyncTask<String, Integer, Void>{
    
    		protected Void doInBackground(String... params) {
    			bitmap=GetImageInputStream((String)params[0]);
    			return null;
    		}
    		
    		protected void onPostExecute(Void result) {
    			super.onPostExecute(result);
    			Message message=new Message();
    			message.what=0x123;
    			handler.sendMessage(message);
    		}
    		
    	}
    	
    	/**
    	 * 保存位图到本地
    	 * @param bitmap
    	 * @param path 本地路径
    	 * @return void
    	 */
    	public void SavaImage(Bitmap bitmap, String path){
    		File file=new File(path);
    		FileOutputStream fileOutputStream=null;
    		//文件夹不存在,则创建它
    		if(!file.exists()){
    			file.mkdir();
    		}
    		try {
    			fileOutputStream=new FileOutputStream(path+"/"+System.currentTimeMillis()+".png");
    			bitmap.compress(Bitmap.CompressFormat.JPEG, 100,fileOutputStream);
    			fileOutputStream.close();
    		} catch (Exception e) {
    			e.printStackTrace();
    		}
    	}
    }
    展开全文
  • 将对象、集合保存到本地,以及保存到sd卡,并且将该对象、集合读出
  • android 视频录制 并保存到本地

    热门讨论 2016-07-27 16:37:44
    android 视频录制 并且保存到本地 注意 保存到sd卡 必须 自己手动创建文件夹 PathUtil 类 dir 的参数 自己改
  • hive查询结果保存到本地

    千次阅读 2018-10-22 15:13:58
    使用hive查询,结果我们通常会保存到hdfs,然后通过sqoop导出工具,将其导出外部mysql或者其他地方,但是有时候查询结果就是一个...但是我们可以通过将结果保存到本地文件,然后读取本地文件就可以解决这个问题了...
  • Typora图片保存到本地

    千次阅读 2020-12-27 21:30:38
    一.问题 我们使用word、onenote时图片都是直接保存在文件中,而typora...这种方法可以在插入图片时自动保存到本地。若我们想要把笔记打包时,选择导出pdf的方式即可。 1.在相应路径创建images文件夹用来保存图片 推荐创
  • 有时候我们需要将list集合保存到本地,自己写起来太麻烦,就找到了强大的框架LItePal,git地址:https://github.com/LitePalFramework/LitePal 本文来自:...
  • node.js抓取网络图片保存到本地,node.js抓取防盗链网络图片保存到本地
  • 使用ffmpeg将直播流保存到本地

    万次阅读 热门讨论 2019-04-22 19:12:19
    直播流如何保存到本地 使用javaCV的FFmpegFrameGrabber帧捕捉器捕捉流的音频帧和视频帧 使用javacpp的FFmpeg 模块调用C/C++类库将帧录制到本地文件 所需依赖 <!--直播流转视频--> <dependency> <...
  • android 视频录制 保存到本地

    千次阅读 2016-07-27 16:48:36
    android 视频录制 保存到本地
  • Canvas输出图片并保存到本地

    千次阅读 2018-08-23 15:14:14
    之前做手写识别的比赛,对于画板canvas写出的数字,要生成图片保存到本地,然后调用python进行识别。对图片保存经历了三个版本变更。 一、直接对屏幕进行截屏保存图片 仅停留在可以实现生成图片,图片的画质还有...
  • canvas保存到本地图片三种方法

    万次阅读 2019-07-26 20:43:10
    canvas保存本地图片三种方法canvas保存本地图片第一种方法(修改图片的媒体类型,window.open直接下载)第二种方法(创建a标签,通过自己触发点击来下载)第三种方法(将图片数据转换成Blob数据,可以保存大图片)...
  • 网上找了些资料, 把base64转化为图片保存到本地,时间比较紧代码写很粗糙。希望对大家有用
  • 爬取图片并保存到本地

    千次阅读 2018-11-07 13:09:58
    爬取图片保存到本地网址代码结果 网址 爬取百度百科爱因斯坦图片,并保存到 C:\pictures\ 下 https://baike.baidu.com/item/阿尔伯特·爱因斯坦/127535?fromtitle=爱因斯坦&amp;amp;fromid=122624&amp;amp;...
  • MultipartFile文件类型保存到本地

    千次阅读 2020-05-28 17:43:34
    MultipartFile文件类型保存到本地 // An highlighted block public static void approvalFile( MultipartFile filecontent){ OutputStream os = null; InputStream inputStream = null; String fileName = ...
  • python gstreamer将rtsp码流视频保存到本地   实现对视频的保存需要将接入的rtsp码流视频解协议和封装音视频两个过程。MKV封装格式可封装几乎所有种类编码的视频和音频,因此采用Gstreamer中的matroskamux元件将解...
  • Android Log日志保存到本地并读取

    千次阅读 2019-10-25 15:41:43
    Android Log 日志添加保存到本地并读取,下面是效果图: GitHub 下载地址:https://github.com/wuqingsen/LogUtils csdn 下载地址:https://download.csdn.net/download/wuqingsen1/11925706 下面添加了三个...
  • 参考博客地址:http://blog.csdn.net/fendoubasaonian 环境: 1、一个支持MJPG格式的usb摄像头 2、支持V4L2的linux环境 实现: 1、从摄像头读取一帧MJPG图片 2、将MJPG图片保存到本地
  • 关于access_token保存到本地的方法

    千次阅读 2017-10-30 18:44:12
    关于access_token保存到本地的方法
  • 用C#代码,获取图片格式的文件,并保存到本地.
  • outlook2016将邮件保存到本地

    万次阅读 2018-12-04 10:43:43
    1.以下是将收件箱的邮件保存到本地 文档链接:http://www.meiriyixue.cn/post/216.html   2.以下是将已发送邮件的邮件保存到本地  
  • 将SparkSql查询的结果保存到本地

    千次阅读 2020-10-28 22:56:51
    将结果保存到本地 【格式为csv格式】 df.write.format("csv").save("output") 补充: 如果sql语句中涉及分区 ,那么保存的文件个数 与 分区的个数相同。 如果想将查询的结果保存到一个文件中,可以使用下面的...
  • C#中将Image保存到本地

    万次阅读 2018-11-05 16:21:07
    最近在弄一个小小的和二维码有关的任务,在将图片保存到本地时遇到一点问题,当初的Bitmap等图片有关的都忘记了,现在当作重新学习一下。 首先,放出微软官方API Image.Save Method 这里的解释和示例能解决大部分...
  • charles把抖音数据保存到本地处理

    千次阅读 热门讨论 2019-12-06 17:16:13
    所以可以采用 模拟器加抓包工具 ,将数据保存到本地,再用python来提取,处理数据。 下面做一个案例示范: 抖音APK的版本 如果你目前的抖音不能配合模拟器打开,那就换一个老版本,或者更换模拟器再次尝试。 我把...
  • Python爬取网络图片保存到本地文件夹主要内容第一步 引入库文件第二步 获取网页文档第三步 获取图片地址第四步 通过地址保存图片在main方法执行以上方法执行main()方法爬取结果 主要内容 经过上一次的爬虫实例,我...
  • python把爬取的图片保存到本地

    千次阅读 2018-05-12 11:18:35
    把图片保存到本地的第一种方法 :thisimgurl = "http:"+thisimg # 为网址添加上http协议 thisimgurl = thisimgurl.replace("\\","") 把转义字符替换 # print(thisimgurl) # 每一张...
  • Outlook邮箱满了不用删除清理,快速转移保存到本地 Outlook提醒“邮箱快满了”,如下所示: 处理方法为: 方法一: 打开“文件>信息>账户设置” 选择“数据文件>添加”,选择一个存储路径,设置好文件名...
  • 微信小程序下载视频保存到本地

    万次阅读 2020-01-02 14:52:21
    微信小程序下载视频保存到本地 .wxml <span bindtap="handleDownload" data-link="{{video}}">下载视频</span> <video style="margin: 0 auto;" src="{{video}}"></video> .js ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,066,423
精华内容 426,569
关键字:

保存到本地