Tech Tip: Save an Online Video with your Browser (no extensions needed)
Sometimes when you're watching online videos on youtube or other sites, you want to save some of them for later offline playback. You've probably heard of Firefox extensions like DownloadHeloper that can do this, but sometimes you may only have a bare version of Firefox, or perhaps a different browser, one that doesn't have a plugin for doing this. Using the tip below, you can save videos no matter what browser you're using.
First, find the browser process id:
$ ps xfa | grep firefox # or grep any other browsers' name
Say, we get 12279. Note that you may get more than one result from the above command: you need the process id of the binary executable. The firefox command, for instance, is normally a script which starts the real binary.Then, list its opened files, by:
$ ls -lU /proc/12279/fd
This will show you the files opened by the process, there may be a lot of them. The file name is the file descriptor number, it is a symbolic link that points to the real file that is opened on that file descriptor. The output will look something like:
# NAME REAL FILE lrwx------ 1 grp usr ... 59 -> socket: lrwx------ 1 grp usr ... 62 -> /home/gektop/.mozilla/firefox/u824gy5z.default/signons.sqlite lrwx------ 1 grp usr ... 70 -> /tmp/moz_media_cache (deleted) lrwx------ 1 grp usr ... 73 -> /home/gektop/.mozilla/firefox/u824gy5z.default/places.sqlite-journal lrwx------ 1 grp usr ... 74 -> /tmp/FlashZzxRDM lrwx------ 1 grp usr ... 75 -> /var/tmp/etilqs_5I5bzLh21aIoh4a (deleted)
Now look for names matching the pattern "/tmp/Flash??????". In the above example, we see /tmp/FlashZzxRDM. This is really a .flv file, you can open it with mplayer or any other video player and see that it is a video. If you see more than one file you may need to try playing them to see which one you're looking for.
The last step is to simply copy the file to your home directory, renaming it in the process (e.g. "jackson.flv"). Wait till after the browser has played the entire video, otherwise you may get an incomplete file.
Special Reports: DevOps
Have projects in development that need help? Have a great development operation in place that can ALWAYS be better? Regardless of where you are in your DevOps process, Linux Journal can help!
With deep focus on Collaborative Development, Continuous Testing and Release & Deployment, we offer here the DEFINITIVE DevOps for Dummies, a mobile Application Development Primer, advice & help from the experts, plus a host of other books, videos, podcasts and more. All free with a quick, one-time registration. Start browsing now...
- Hash Tables—Theory and Practice
- The Ubuntu Conspiracy
- Making a PHP Site on Linux Work with a Microsoft SQL Server Database
- A First Look at IBM's New Linux Servers
- Vigilante Malware
- Disney's Linux Light Bulbs (Not a "Luxo Jr." Reboot)
- Vagrant Simplified
- System Status as SMS Text Messages
- Dealing with Boundary Issues
- Bluetooth Hacks